diff --git a/Directory.Build.targets b/Directory.Build.targets index 5dacb6b5..5883b50c 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -1,5 +1,5 @@ - 2.14 + 3.10 diff --git a/GatheringPathRenderer/RendererPlugin.cs b/GatheringPathRenderer/RendererPlugin.cs index b1ec7561..dbad1715 100644 --- a/GatheringPathRenderer/RendererPlugin.cs +++ b/GatheringPathRenderer/RendererPlugin.cs @@ -121,7 +121,7 @@ public sealed class RendererPlugin : IDalamudPlugin if (!directory.Exists) return; - _pluginLog.Information($"Loading locations from {directory}"); + //_pluginLog.Information($"Loading locations from {directory}"); foreach (FileInfo fileInfo in directory.GetFiles("*.json")) { try diff --git a/GatheringPathRenderer/Windows/EditorWindow.cs b/GatheringPathRenderer/Windows/EditorWindow.cs index e081c967..55f9a5c2 100644 --- a/GatheringPathRenderer/Windows/EditorWindow.cs +++ b/GatheringPathRenderer/Windows/EditorWindow.cs @@ -35,7 +35,7 @@ internal sealed class EditorWindow : Window public EditorWindow(RendererPlugin plugin, EditorCommands editorCommands, IDataManager dataManager, ITargetManager targetManager, IClientState clientState, IObjectTable objectTable) : base("Gathering Path Editor###QuestionableGatheringPathEditor", - ImGuiWindowFlags.NoFocusOnAppearing | ImGuiWindowFlags.NoNavFocus) + ImGuiWindowFlags.NoFocusOnAppearing | ImGuiWindowFlags.NoNavFocus | ImGuiWindowFlags.AlwaysAutoResize) { _plugin = plugin; _editorCommands = editorCommands; @@ -46,7 +46,7 @@ internal sealed class EditorWindow : Window SizeConstraints = new WindowSizeConstraints { - MinimumSize = new Vector2(300, 300), + MinimumSize = new Vector2(300, 100), }; RespectCloseHotkey = false; @@ -66,7 +66,7 @@ internal sealed class EditorWindow : Window _target = _targetManager.Target; var gatheringLocations = _plugin.GetLocationsInTerritory(_clientState.TerritoryType); - var location = gatheringLocations.SelectMany(context => + var location = gatheringLocations.ToList().SelectMany(context => context.Root.Groups.SelectMany(group => group.Nodes.SelectMany(node => node.Locations .Select(location => diff --git a/GatheringPathRenderer/packages.lock.json b/GatheringPathRenderer/packages.lock.json index f7b5b4d3..aae9abba 100644 --- a/GatheringPathRenderer/packages.lock.json +++ b/GatheringPathRenderer/packages.lock.json @@ -76,18 +76,10 @@ "Microsoft.SourceLink.Common": "1.1.1" } }, - "System.Text.Encodings.Web": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "yev/k9GHAEGx2Rg3/tU6MQh4HGBXJs70y7j1LaM1i/ER9po+6nnQ6RRqTJn1E7Xu0fbIFK80Nh5EoODxrbxwBQ==" - }, "System.Text.Json": { "type": "Transitive", - "resolved": "8.0.4", - "contentHash": "bAkhgDJ88XTsqczoxEMliSrpijKZHhbJQldhAmObj/RbrN3sU5dcokuXmWJWsdQAhiMJ9bTayWsL1C9fbbCRhw==", - "dependencies": { - "System.Text.Encodings.Web": "8.0.0" - } + "resolved": "8.0.5", + "contentHash": "0f1B50Ss7rqxXiaBJyzUu9bWFOO2/zSlifZ/UNMdiIpDYe4cY4LQQicP4nirK1OS31I43rn062UIJ1Q9bpmHpg==" }, "ecommons": { "type": "Project" @@ -101,7 +93,7 @@ "questionable.model": { "type": "Project", "dependencies": { - "System.Text.Json": "[8.0.4, )" + "System.Text.Json": "[8.0.5, )" } } } diff --git a/GatheringPaths/3.x - Heavensward/The Dravanian Forelands/911_Avalonia Fallen_MIN.json b/GatheringPaths/3.x - Heavensward/The Dravanian Forelands/911_Avalonia Fallen_MIN.json new file mode 100644 index 00000000..649e0ef6 --- /dev/null +++ b/GatheringPaths/3.x - Heavensward/The Dravanian Forelands/911_Avalonia Fallen_MIN.json @@ -0,0 +1,69 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/GatheringPaths/gatheringlocation-v1.json", + "Author": "liza", + "Steps": [ + { + "TerritoryId": 398, + "InteractionType": "None", + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" + } + ], + "Groups": [ + { + "Nodes": [ + { + "DataId": 34382, + "Locations": [ + { + "Position": { + "X": -528.8412, + "Y": -89.70924, + "Z": 458.582 + }, + "MinimumAngle": -10, + "MaximumAngle": 80, + "MinimumDistance": 2.1, + "MaximumDistance": 3 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34383, + "Locations": [ + { + "Position": { + "X": -636.4533, + "Y": -100.1258, + "Z": 484.7436 + }, + "MinimumAngle": -75, + "MaximumAngle": 35 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34384, + "Locations": [ + { + "Position": { + "X": -589.4542, + "Y": -100.4852, + "Z": 528.1926 + }, + "MinimumAngle": -25, + "MaximumAngle": 120 + } + ] + } + ] + } + ] +} diff --git a/GatheringPaths/3.x - Heavensward/The Dravanian Forelands/914_Avalonia Fallen_BTN.json b/GatheringPaths/3.x - Heavensward/The Dravanian Forelands/914_Avalonia Fallen_BTN.json new file mode 100644 index 00000000..d2b1d932 --- /dev/null +++ b/GatheringPaths/3.x - Heavensward/The Dravanian Forelands/914_Avalonia Fallen_BTN.json @@ -0,0 +1,61 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/GatheringPaths/gatheringlocation-v1.json", + "Author": "liza", + "Steps": [ + { + "TerritoryId": 398, + "InteractionType": "None", + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" + } + ], + "Groups": [ + { + "Nodes": [ + { + "DataId": 34391, + "Locations": [ + { + "Position": { + "X": -49.75243, + "Y": -31.70323, + "Z": -171.6977 + } + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34392, + "Locations": [ + { + "Position": { + "X": -44.89702, + "Y": -32.39204, + "Z": -153.4274 + } + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34393, + "Locations": [ + { + "Position": { + "X": -36.6049, + "Y": -31.32222, + "Z": -134.1001 + } + } + ] + } + ] + } + ] +} diff --git a/GatheringPaths/4.x - Stormblood/The Peaks/531_Sleeping Stones_MIN.json b/GatheringPaths/4.x - Stormblood/The Peaks/531_Sleeping Stones_MIN.json index 871aec20..c8a3de6f 100644 --- a/GatheringPaths/4.x - Stormblood/The Peaks/531_Sleeping Stones_MIN.json +++ b/GatheringPaths/4.x - Stormblood/The Peaks/531_Sleeping Stones_MIN.json @@ -84,8 +84,10 @@ "Y": 257.4255, "Z": -669.3115 }, - "MinimumAngle": -30, - "MaximumAngle": 5 + "MinimumAngle": -50, + "MaximumAngle": -15, + "MinimumDistance": 2.1, + "MaximumDistance": 3 } ] } @@ -133,4 +135,4 @@ ] } ] -} +} \ No newline at end of file diff --git a/GatheringPaths/4.x - Stormblood/The Ruby Sea/490_Rasen Kaikyo_MIN.json b/GatheringPaths/4.x - Stormblood/The Ruby Sea/490_Rasen Kaikyo_MIN.json index 81b0c73c..def9bda9 100644 --- a/GatheringPaths/4.x - Stormblood/The Ruby Sea/490_Rasen Kaikyo_MIN.json +++ b/GatheringPaths/4.x - Stormblood/The Ruby Sea/490_Rasen Kaikyo_MIN.json @@ -10,7 +10,8 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "AetheryteShortcut": "Ruby Sea - Tamamizu" + "AetheryteShortcut": "Ruby Sea - Tamamizu", + "RestartNavigationIfCancelled": false }, { "TerritoryId": 613, diff --git a/GatheringPaths/4.x - Stormblood/The Ruby Sea/511_Rasen Kaikyo_BTN.json b/GatheringPaths/4.x - Stormblood/The Ruby Sea/511_Rasen Kaikyo_BTN.json index d9b9f746..ec39be55 100644 --- a/GatheringPaths/4.x - Stormblood/The Ruby Sea/511_Rasen Kaikyo_BTN.json +++ b/GatheringPaths/4.x - Stormblood/The Ruby Sea/511_Rasen Kaikyo_BTN.json @@ -10,7 +10,8 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "AetheryteShortcut": "Ruby Sea - Tamamizu" + "AetheryteShortcut": "Ruby Sea - Tamamizu", + "RestartNavigationIfCancelled": false }, { "TerritoryId": 613, diff --git a/GatheringPaths/4.x - Stormblood/The Ruby Sea/529_Rasen Kaikyo_BTN.json b/GatheringPaths/4.x - Stormblood/The Ruby Sea/529_Rasen Kaikyo_BTN.json index 3a159087..5528393a 100644 --- a/GatheringPaths/4.x - Stormblood/The Ruby Sea/529_Rasen Kaikyo_BTN.json +++ b/GatheringPaths/4.x - Stormblood/The Ruby Sea/529_Rasen Kaikyo_BTN.json @@ -10,7 +10,8 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "AetheryteShortcut": "Ruby Sea - Tamamizu" + "AetheryteShortcut": "Ruby Sea - Tamamizu", + "RestartNavigationIfCancelled": false }, { "TerritoryId": 613, diff --git a/GatheringPaths/4.x - Stormblood/The Ruby Sea/533_The Turquoise Trench_MIN.json b/GatheringPaths/4.x - Stormblood/The Ruby Sea/533_The Turquoise Trench_MIN.json index c3dd904a..2e69433a 100644 --- a/GatheringPaths/4.x - Stormblood/The Ruby Sea/533_The Turquoise Trench_MIN.json +++ b/GatheringPaths/4.x - Stormblood/The Ruby Sea/533_The Turquoise Trench_MIN.json @@ -40,7 +40,7 @@ "Z": 634.821 }, "MinimumAngle": 45, - "MaximumAngle": 90, + "MaximumAngle": 65, "MinimumDistance": 1.6, "MaximumDistance": 3 }, @@ -140,4 +140,4 @@ ] } ] -} +} \ No newline at end of file diff --git a/GatheringPaths/4.x - Stormblood/The Ruby Sea/730_The Kobayashi Maru_MIN.json b/GatheringPaths/4.x - Stormblood/The Ruby Sea/730_The Kobayashi Maru_MIN.json index 959b1210..4d8d1589 100644 --- a/GatheringPaths/4.x - Stormblood/The Ruby Sea/730_The Kobayashi Maru_MIN.json +++ b/GatheringPaths/4.x - Stormblood/The Ruby Sea/730_The Kobayashi Maru_MIN.json @@ -10,7 +10,8 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "AetheryteShortcut": "Ruby Sea - Tamamizu" + "AetheryteShortcut": "Ruby Sea - Tamamizu", + "RestartNavigationIfCancelled": false }, { "TerritoryId": 613, diff --git a/GatheringPaths/5.x - Shadowbringers/Il Mheg/651_Thysm Lran_BTN.json b/GatheringPaths/5.x - Shadowbringers/Il Mheg/651_Thysm Lran_BTN.json new file mode 100644 index 00000000..717c814e --- /dev/null +++ b/GatheringPaths/5.x - Shadowbringers/Il Mheg/651_Thysm Lran_BTN.json @@ -0,0 +1,140 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/GatheringPaths/gatheringlocation-v1.json", + "Author": "liza", + "Steps": [ + { + "Position": { + "X": 329.38184, + "Y": 9.586891, + "Z": 749.2314 + }, + "TerritoryId": 816, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Il Mheg - Lydha Lran", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "Position": { + "X": 351.29465, + "Y": -38.275272, + "Z": 763.0457 + }, + "TerritoryId": 816, + "InteractionType": "WalkTo", + "Fly": true, + "DisableNavmesh": true + } + ], + "Groups": [ + { + "Nodes": [ + { + "DataId": 32832, + "Locations": [ + { + "Position": { + "X": 382.7488, + "Y": -72.47251, + "Z": 794.3513 + } + }, + { + "Position": { + "X": 388.7861, + "Y": -74.19925, + "Z": 801.0947 + } + }, + { + "Position": { + "X": 386.1797, + "Y": -73.5009, + "Z": 787.0967 + } + } + ] + }, + { + "DataId": 32831, + "Locations": [ + { + "Position": { + "X": 396.5799, + "Y": -76.29187, + "Z": 790.9022 + } + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 32830, + "Locations": [ + { + "Position": { + "X": 492.6384, + "Y": -82.73045, + "Z": 804.714 + } + }, + { + "Position": { + "X": 482.808, + "Y": -82.61642, + "Z": 802.591 + } + } + ] + }, + { + "DataId": 32829, + "Locations": [ + { + "Position": { + "X": 493.5814, + "Y": -82.43644, + "Z": 790.831 + } + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 32827, + "Locations": [ + { + "Position": { + "X": 490.9451, + "Y": -97.88062, + "Z": 636.6115 + } + } + ] + }, + { + "DataId": 32828, + "Locations": [ + { + "Position": { + "X": 491.5274, + "Y": -100.762, + "Z": 626.6958 + } + } + ] + } + ] + } + ] +} diff --git a/GatheringPaths/5.x - Shadowbringers/Il Mheg/652_Thysm Lran_MIN.json b/GatheringPaths/5.x - Shadowbringers/Il Mheg/652_Thysm Lran_MIN.json new file mode 100644 index 00000000..4612241a --- /dev/null +++ b/GatheringPaths/5.x - Shadowbringers/Il Mheg/652_Thysm Lran_MIN.json @@ -0,0 +1,158 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/GatheringPaths/gatheringlocation-v1.json", + "Author": "liza", + "Steps": [ + { + "Position": { + "X": 491.82068, + "Y": 3.9304812, + "Z": 487.9401 + }, + "TerritoryId": 816, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Il Mheg - Lydha Lran", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "Position": { + "X": 506.00256, + "Y": -37.76961, + "Z": 485.49347 + }, + "TerritoryId": 816, + "InteractionType": "WalkTo", + "Fly": true, + "DisableNavmesh": true + } + ], + "Groups": [ + { + "Nodes": [ + { + "DataId": 32836, + "Locations": [ + { + "Position": { + "X": 539.5437, + "Y": -81.62054, + "Z": 520.1647 + }, + "MinimumAngle": -30, + "MaximumAngle": 165 + }, + { + "Position": { + "X": 555.8599, + "Y": -73.65717, + "Z": 494.6164 + }, + "MinimumAngle": 35, + "MaximumAngle": 240 + }, + { + "Position": { + "X": 576.4164, + "Y": -69.75835, + "Z": 512.9263 + }, + "MinimumAngle": -75, + "MaximumAngle": 70 + } + ] + }, + { + "DataId": 32835, + "Locations": [ + { + "Position": { + "X": 552.5504, + "Y": -78.23183, + "Z": 512.429 + }, + "MinimumAngle": -30, + "MaximumAngle": 135 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 32838, + "Locations": [ + { + "Position": { + "X": 652.7063, + "Y": -46.64378, + "Z": 488.4543 + }, + "MinimumAngle": 0, + "MaximumAngle": 120 + }, + { + "Position": { + "X": 669.2959, + "Y": -47.14824, + "Z": 513.9606 + }, + "MinimumAngle": -20, + "MaximumAngle": 105 + } + ] + }, + { + "DataId": 32837, + "Locations": [ + { + "Position": { + "X": 659.1685, + "Y": -46.65159, + "Z": 499.8015 + }, + "MinimumAngle": 0, + "MaximumAngle": 125 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 32834, + "Locations": [ + { + "Position": { + "X": 576.1583, + "Y": -46.68682, + "Z": 375.5306 + }, + "MinimumAngle": -40, + "MaximumAngle": 150 + } + ] + }, + { + "DataId": 32833, + "Locations": [ + { + "Position": { + "X": 571.1834, + "Y": -46.41214, + "Z": 360.5112 + }, + "MinimumAngle": 0, + "MaximumAngle": 115 + } + ] + } + ] + } + ] +} diff --git a/GatheringPaths/5.x - Shadowbringers/Il Mheg/918_Voeburtenburg_MIN.json b/GatheringPaths/5.x - Shadowbringers/Il Mheg/918_Voeburtenburg_MIN.json index 20c02940..07ca30f3 100644 --- a/GatheringPaths/5.x - Shadowbringers/Il Mheg/918_Voeburtenburg_MIN.json +++ b/GatheringPaths/5.x - Shadowbringers/Il Mheg/918_Voeburtenburg_MIN.json @@ -45,8 +45,10 @@ "Y": 58.56588, "Z": -533.6083 }, - "MinimumAngle": 155, - "MaximumAngle": 325 + "MinimumAngle": 185, + "MaximumAngle": 225, + "MinimumDistance": 2, + "MaximumDistance": 3 } ] } @@ -131,4 +133,4 @@ ] } ] -} +} \ No newline at end of file diff --git a/GatheringPaths/5.x - Shadowbringers/Kholusia/576__MIN.json b/GatheringPaths/5.x - Shadowbringers/Kholusia/576__MIN.json new file mode 100644 index 00000000..6be75bd0 --- /dev/null +++ b/GatheringPaths/5.x - Shadowbringers/Kholusia/576__MIN.json @@ -0,0 +1,120 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/GatheringPaths/gatheringlocation-v1.json", + "Author": "liza", + "Steps": [ + { + "TerritoryId": 814, + "InteractionType": "None" + } + ], + "Groups": [ + { + "Nodes": [ + { + "DataId": 32512, + "Locations": [ + { + "Position": { + "X": -221.5365, + "Y": 88.75751, + "Z": 36.51096 + }, + "MinimumAngle": -100, + "MaximumAngle": 25 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 32513, + "Locations": [ + { + "Position": { + "X": -227.0897, + "Y": 89.90434, + "Z": 37.42806 + }, + "MinimumAngle": -20, + "MaximumAngle": 60 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 32514, + "Locations": [ + { + "Position": { + "X": -233.9371, + "Y": 89.18435, + "Z": 42.91663 + }, + "MinimumAngle": -110, + "MaximumAngle": -25 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 32515, + "Locations": [ + { + "Position": { + "X": -243.0384, + "Y": 88.70179, + "Z": 48.95438 + }, + "MinimumAngle": -70, + "MaximumAngle": 45 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 32516, + "Locations": [ + { + "Position": { + "X": -256.5147, + "Y": 90.32328, + "Z": 51.07351 + }, + "MinimumAngle": -75, + "MaximumAngle": 90 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 32517, + "Locations": [ + { + "Position": { + "X": -265.2769, + "Y": 90.43383, + "Z": 45.49376 + }, + "MinimumAngle": -40, + "MaximumAngle": 40 + } + ] + } + ] + } + ] +} diff --git a/GatheringPaths/5.x - Shadowbringers/The Tempest/927_The Norvrandt Slope_BTN.json b/GatheringPaths/5.x - Shadowbringers/The Tempest/927_The Norvrandt Slope_BTN.json index 36a1044b..5eda959e 100644 --- a/GatheringPaths/5.x - Shadowbringers/The Tempest/927_The Norvrandt Slope_BTN.json +++ b/GatheringPaths/5.x - Shadowbringers/The Tempest/927_The Norvrandt Slope_BTN.json @@ -4,7 +4,8 @@ "Steps": [ { "TerritoryId": 818, - "InteractionType": "None" + "InteractionType": "None", + "AetheryteShortcut": "Tempest - Ondo Cups" } ], "Groups": [ @@ -128,4 +129,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/GatheringPaths/6.x - Endwalker/Elpis/824_Northerly Zephyrneus_MIN.json b/GatheringPaths/6.x - Endwalker/Elpis/824_Northerly Zephyrneus_MIN.json index 8655bdc8..a2b4b035 100644 --- a/GatheringPaths/6.x - Endwalker/Elpis/824_Northerly Zephyrneus_MIN.json +++ b/GatheringPaths/6.x - Endwalker/Elpis/824_Northerly Zephyrneus_MIN.json @@ -4,7 +4,8 @@ "Steps": [ { "TerritoryId": 961, - "InteractionType": "None" + "InteractionType": "None", + "AetheryteShortcut": "Elpis - Poieten Oikos" } ], "Groups": [ @@ -161,4 +162,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/GatheringPaths/6.x - Endwalker/Labyrinthos/886__MIN.json b/GatheringPaths/6.x - Endwalker/Labyrinthos/886__MIN.json new file mode 100644 index 00000000..0657a96f --- /dev/null +++ b/GatheringPaths/6.x - Endwalker/Labyrinthos/886__MIN.json @@ -0,0 +1,161 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/GatheringPaths/gatheringlocation-v1.json", + "Author": "liza", + "FlyBetweenNodes": false, + "Steps": [ + { + "TerritoryId": 956, + "InteractionType": "None" + } + ], + "Groups": [ + { + "Nodes": [ + { + "DataId": 34281, + "Locations": [ + { + "Position": { + "X": -510.2663, + "Y": -20.72923, + "Z": -119.9257 + }, + "MinimumAngle": -120, + "MaximumAngle": 10 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34283, + "Locations": [ + { + "Position": { + "X": -502.4525, + "Y": -18.55583, + "Z": -139.683 + }, + "MinimumAngle": -95, + "MaximumAngle": -35, + "MinimumDistance": 1, + "MaximumDistance": 1.8 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34284, + "Locations": [ + { + "Position": { + "X": -499.3535, + "Y": -18.75164, + "Z": -141.9256 + }, + "MinimumAngle": -75, + "MaximumAngle": 15, + "MinimumDistance": 1, + "MaximumDistance": 2.3 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34285, + "Locations": [ + { + "Position": { + "X": -495.1168, + "Y": -18.65139, + "Z": -142.5636 + }, + "MinimumAngle": -85, + "MaximumAngle": 45 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34286, + "Locations": [ + { + "Position": { + "X": -491.4826, + "Y": -19.44574, + "Z": -144.2088 + }, + "MinimumAngle": -105, + "MaximumAngle": 25 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34287, + "Locations": [ + { + "Position": { + "X": -488.8665, + "Y": -19.70717, + "Z": -147.403 + }, + "MinimumAngle": 230, + "MaximumAngle": 340 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34289, + "Locations": [ + { + "Position": { + "X": -489.1829, + "Y": -19.91622, + "Z": -153.7781 + }, + "MinimumAngle": 200, + "MaximumAngle": 320 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34291, + "Locations": [ + { + "Position": { + "X": -490.1324, + "Y": -18.06493, + "Z": -164.4281 + }, + "MinimumAngle": 210, + "MaximumAngle": 310 + } + ] + } + ] + } + ] +} diff --git a/GatheringPaths/6.x - Endwalker/Ultima Thule/905__MIN.json b/GatheringPaths/6.x - Endwalker/Ultima Thule/905__MIN.json new file mode 100644 index 00000000..459a3d12 --- /dev/null +++ b/GatheringPaths/6.x - Endwalker/Ultima Thule/905__MIN.json @@ -0,0 +1,67 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/GatheringPaths/gatheringlocation-v1.json", + "Author": "plogon_enjoyer", + "Steps": [ + { + "TerritoryId": 960, + "InteractionType": "None", + "AetheryteShortcut": "Ultima Thule - Reah Tahra" + } + ], + "Groups": [ + { + "Nodes": [ + { + "DataId": 34364, + "Locations": [ + { + "Position": { + "X": -470.5523, + "Y": 79.49631, + "Z": 259.4856 + }, + "MinimumAngle": 0, + "MaximumAngle": 150 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34365, + "Locations": [ + { + "Position": { + "X": -493.5432, + "Y": 73.7095, + "Z": 288.547 + }, + "MinimumAngle": 15, + "MaximumAngle": 215 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34366, + "Locations": [ + { + "Position": { + "X": -478.8098, + "Y": 76.21393, + "Z": 280.0947 + }, + "MinimumAngle": 50, + "MaximumAngle": 180 + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/GatheringPaths/6.x - Endwalker/Ultima Thule/907__BTN.json b/GatheringPaths/6.x - Endwalker/Ultima Thule/907__BTN.json new file mode 100644 index 00000000..1b2a3511 --- /dev/null +++ b/GatheringPaths/6.x - Endwalker/Ultima Thule/907__BTN.json @@ -0,0 +1,65 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/GatheringPaths/gatheringlocation-v1.json", + "Author": "plogon_enjoyer", + "Steps": [ + { + "TerritoryId": 960, + "InteractionType": "None", + "AetheryteShortcut": "Ultima Thule - Reah Tahra" + } + ], + "Groups": [ + { + "Nodes": [ + { + "DataId": 34370, + "Locations": [ + { + "Position": { + "X": -614.3087, + "Y": 81.96295, + "Z": 262.5681 + }, + "MinimumAngle": -150, + "MaximumAngle": 20 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34371, + "Locations": [ + { + "Position": { + "X": -624.2021, + "Y": 79.12945, + "Z": 278.3768 + } + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34372, + "Locations": [ + { + "Position": { + "X": -639.8513, + "Y": 78.34773, + "Z": 274.0034 + }, + "MinimumAngle": -60, + "MaximumAngle": 95 + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/GatheringPaths/6.x - Endwalker/Ultima Thule/909__MIN.json b/GatheringPaths/6.x - Endwalker/Ultima Thule/909__MIN.json new file mode 100644 index 00000000..9d3da596 --- /dev/null +++ b/GatheringPaths/6.x - Endwalker/Ultima Thule/909__MIN.json @@ -0,0 +1,69 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/GatheringPaths/gatheringlocation-v1.json", + "Author": "plogon_enjoyer", + "Steps": [ + { + "TerritoryId": 960, + "InteractionType": "None", + "AetheryteShortcut": "Ultima Thule - Reah Tahra" + } + ], + "Groups": [ + { + "Nodes": [ + { + "DataId": 34376, + "Locations": [ + { + "Position": { + "X": -586.0029, + "Y": 84.39367, + "Z": 568.1448 + }, + "MinimumAngle": -60, + "MaximumAngle": 75, + "MinimumDistance": 1, + "MaximumDistance": 3 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34377, + "Locations": [ + { + "Position": { + "X": -578.2748, + "Y": 86.34826, + "Z": 567.2876 + }, + "MinimumAngle": -80, + "MaximumAngle": 60 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34378, + "Locations": [ + { + "Position": { + "X": -600.2446, + "Y": 86.01588, + "Z": 557.4477 + }, + "MinimumAngle": -35, + "MaximumAngle": 145 + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/GatheringPaths/6.x - Endwalker/Ultima Thule/910__MIN.json b/GatheringPaths/6.x - Endwalker/Ultima Thule/910__MIN.json new file mode 100644 index 00000000..d8c5cbdb --- /dev/null +++ b/GatheringPaths/6.x - Endwalker/Ultima Thule/910__MIN.json @@ -0,0 +1,69 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/GatheringPaths/gatheringlocation-v1.json", + "Author": "plogon_enjoyer", + "Steps": [ + { + "TerritoryId": 960, + "InteractionType": "None", + "AetheryteShortcut": "Ultima Thule - Abode of the Ea" + } + ], + "Groups": [ + { + "Nodes": [ + { + "DataId": 34379, + "Locations": [ + { + "Position": { + "X": 454.8535, + "Y": 307.5555, + "Z": -590.8547 + }, + "MinimumAngle": -105, + "MaximumAngle": -25, + "MinimumDistance": 1, + "MaximumDistance": 1.6 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34380, + "Locations": [ + { + "Position": { + "X": 447.787, + "Y": 300.8405, + "Z": -597.8972 + }, + "MinimumAngle": 45, + "MaximumAngle": 185 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34381, + "Locations": [ + { + "Position": { + "X": 448.707, + "Y": 305.0525, + "Z": -591.1053 + }, + "MinimumAngle": 30, + "MaximumAngle": 70 + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/GatheringPaths/6.x - Endwalker/Ultima Thule/912__BTN.json b/GatheringPaths/6.x - Endwalker/Ultima Thule/912__BTN.json new file mode 100644 index 00000000..1955433b --- /dev/null +++ b/GatheringPaths/6.x - Endwalker/Ultima Thule/912__BTN.json @@ -0,0 +1,67 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/GatheringPaths/gatheringlocation-v1.json", + "Author": "plogon_enjoyer", + "Steps": [ + { + "TerritoryId": 960, + "InteractionType": "None", + "AetheryteShortcut": "Ultima Thule - Reah Tahra" + } + ], + "Groups": [ + { + "Nodes": [ + { + "DataId": 34385, + "Locations": [ + { + "Position": { + "X": 27.77994, + "Y": 73.57088, + "Z": 695.2364 + }, + "MinimumAngle": 0, + "MaximumAngle": 135 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34386, + "Locations": [ + { + "Position": { + "X": 23.20134, + "Y": 70.90392, + "Z": 698.6194 + }, + "MinimumAngle": -10, + "MaximumAngle": 145 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34387, + "Locations": [ + { + "Position": { + "X": 30.69294, + "Y": 75.43362, + "Z": 688.8371 + }, + "MinimumAngle": -5, + "MaximumAngle": 120 + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/GatheringPaths/6.x - Endwalker/Ultima Thule/913__BTN.json b/GatheringPaths/6.x - Endwalker/Ultima Thule/913__BTN.json new file mode 100644 index 00000000..65e71a56 --- /dev/null +++ b/GatheringPaths/6.x - Endwalker/Ultima Thule/913__BTN.json @@ -0,0 +1,69 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/GatheringPaths/gatheringlocation-v1.json", + "Author": "plogon_enjoyer", + "Steps": [ + { + "TerritoryId": 960, + "InteractionType": "None", + "AetheryteShortcut": "Ultima Thule - Abode of the Ea" + } + ], + "Groups": [ + { + "Nodes": [ + { + "DataId": 34388, + "Locations": [ + { + "Position": { + "X": 398.7177, + "Y": 292.5112, + "Z": -462.82 + }, + "MinimumAngle": -65, + "MaximumAngle": 65 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34389, + "Locations": [ + { + "Position": { + "X": 373.1678, + "Y": 290.8189, + "Z": -442.4228 + }, + "MinimumAngle": 160, + "MaximumAngle": 305 + } + ] + } + ] + }, + { + "Nodes": [ + { + "DataId": 34390, + "Locations": [ + { + "Position": { + "X": 383.5671, + "Y": 289.9682, + "Z": -392.3997 + }, + "MinimumAngle": 65, + "MaximumAngle": 165, + "MinimumDistance": 1, + "MaximumDistance": 3 + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/GatheringPaths/7.x - Dawntrail/Shaaloani/978_Pyariyoanaan Plain_MIN.json b/GatheringPaths/7.x - Dawntrail/Shaaloani/978_Pyariyoanaan Plain_MIN.json index ef7c642e..fbb7675a 100644 --- a/GatheringPaths/7.x - Dawntrail/Shaaloani/978_Pyariyoanaan Plain_MIN.json +++ b/GatheringPaths/7.x - Dawntrail/Shaaloani/978_Pyariyoanaan Plain_MIN.json @@ -42,14 +42,18 @@ "X": 419.309, "Y": -10.25133, "Z": -784.8259 - } + }, + "MinimumAngle": -25, + "MaximumAngle": 85 }, { "Position": { "X": 410.6989, "Y": -10.9656, "Z": -790.8315 - } + }, + "MinimumAngle": -20, + "MaximumAngle": 95 } ] } @@ -156,4 +160,4 @@ ] } ] -} +} \ No newline at end of file diff --git a/GatheringPaths/7.x - Dawntrail/Urqopacha/974_Chabameki_MIN.json b/GatheringPaths/7.x - Dawntrail/Urqopacha/974_Chabameki_MIN.json index 7dff5fe8..d103a9ea 100644 --- a/GatheringPaths/7.x - Dawntrail/Urqopacha/974_Chabameki_MIN.json +++ b/GatheringPaths/7.x - Dawntrail/Urqopacha/974_Chabameki_MIN.json @@ -52,8 +52,8 @@ "Y": -47.86026, "Z": -394.9654 }, - "MinimumAngle": -120, - "MaximumAngle": 120 + "MinimumAngle": -145, + "MaximumAngle": -95 } ] } @@ -160,4 +160,4 @@ ] } ] -} +} \ No newline at end of file diff --git a/GatheringPaths/packages.lock.json b/GatheringPaths/packages.lock.json index 408e267a..d46a7a0e 100644 --- a/GatheringPaths/packages.lock.json +++ b/GatheringPaths/packages.lock.json @@ -2,23 +2,15 @@ "version": 1, "dependencies": { "net8.0-windows7.0": { - "System.Text.Encodings.Web": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "yev/k9GHAEGx2Rg3/tU6MQh4HGBXJs70y7j1LaM1i/ER9po+6nnQ6RRqTJn1E7Xu0fbIFK80Nh5EoODxrbxwBQ==" - }, "System.Text.Json": { "type": "Transitive", - "resolved": "8.0.4", - "contentHash": "bAkhgDJ88XTsqczoxEMliSrpijKZHhbJQldhAmObj/RbrN3sU5dcokuXmWJWsdQAhiMJ9bTayWsL1C9fbbCRhw==", - "dependencies": { - "System.Text.Encodings.Web": "8.0.0" - } + "resolved": "8.0.5", + "contentHash": "0f1B50Ss7rqxXiaBJyzUu9bWFOO2/zSlifZ/UNMdiIpDYe4cY4LQQicP4nirK1OS31I43rn062UIJ1Q9bpmHpg==" }, "questionable.model": { "type": "Project", "dependencies": { - "System.Text.Json": "[8.0.4, )" + "System.Text.Json": "[8.0.5, )" } } } diff --git a/QuestPathGenerator/QuestPathGenerator.csproj b/QuestPathGenerator/QuestPathGenerator.csproj index d5eb73ba..9c862ec9 100644 --- a/QuestPathGenerator/QuestPathGenerator.csproj +++ b/QuestPathGenerator/QuestPathGenerator.csproj @@ -26,7 +26,7 @@ - + diff --git a/QuestPathGenerator/QuestSourceGenerator.cs b/QuestPathGenerator/QuestSourceGenerator.cs index bcf960f3..b23bb9da 100644 --- a/QuestPathGenerator/QuestSourceGenerator.cs +++ b/QuestPathGenerator/QuestSourceGenerator.cs @@ -57,7 +57,6 @@ public class QuestSourceGenerator : ISourceGenerator { quest.Author = []; quest.QuestSequence = []; - quest.TerritoryBlacklist = []; } quests.Add((id, quest)); @@ -165,8 +164,6 @@ public class QuestSourceGenerator : ISourceGenerator Assignment(nameof(QuestRoot.Disabled), quest.Disabled, false).AsSyntaxNodeOrToken(), Assignment(nameof(QuestRoot.Comment), quest.Comment, null) .AsSyntaxNodeOrToken(), - AssignmentList(nameof(QuestRoot.TerritoryBlacklist), - quest.TerritoryBlacklist).AsSyntaxNodeOrToken(), AssignmentExpression( SyntaxKind.SimpleAssignmentExpression, IdentifierName(nameof(QuestRoot.QuestSequence)), diff --git a/QuestPathGenerator/RoslynElements/DialogueChoiceExtensions.cs b/QuestPathGenerator/RoslynElements/DialogueChoiceExtensions.cs index 18de00c1..e33fe408 100644 --- a/QuestPathGenerator/RoslynElements/DialogueChoiceExtensions.cs +++ b/QuestPathGenerator/RoslynElements/DialogueChoiceExtensions.cs @@ -32,12 +32,19 @@ internal static class DialogueChoiceExtensions Assignment(nameof(DialogueChoice.Answer), dialogueChoice.Answer, emptyChoice.Answer) .AsSyntaxNodeOrToken(), + Assignment(nameof(DialogueChoice.PromptIsRegularExpression), + dialogueChoice.PromptIsRegularExpression, + emptyChoice.PromptIsRegularExpression) + .AsSyntaxNodeOrToken(), Assignment(nameof(DialogueChoice.AnswerIsRegularExpression), dialogueChoice.AnswerIsRegularExpression, emptyChoice.AnswerIsRegularExpression) .AsSyntaxNodeOrToken(), Assignment(nameof(DialogueChoice.DataId), dialogueChoice.DataId, emptyChoice.DataId) + .AsSyntaxNodeOrToken(), + Assignment(nameof(DialogueChoice.SpecialCondition), dialogueChoice.SpecialCondition, + emptyChoice.SpecialCondition) .AsSyntaxNodeOrToken())))); } } diff --git a/QuestPathGenerator/RoslynElements/PurchaseMenuExtensions.cs b/QuestPathGenerator/RoslynElements/PurchaseMenuExtensions.cs new file mode 100644 index 00000000..251e64ce --- /dev/null +++ b/QuestPathGenerator/RoslynElements/PurchaseMenuExtensions.cs @@ -0,0 +1,28 @@ +using Microsoft.CodeAnalysis.CSharp; +using Microsoft.CodeAnalysis.CSharp.Syntax; +using Questionable.Model.Questing; +using static Microsoft.CodeAnalysis.CSharp.SyntaxFactory; +using static Questionable.QuestPathGenerator.RoslynShortcuts; + +namespace Questionable.QuestPathGenerator.RoslynElements; + +internal static class PurchaseMenuExtensions +{ + public static ExpressionSyntax ToExpressionSyntax(this PurchaseMenu purchaseMenu) + { + PurchaseMenu emptyMenu = new(); + return ObjectCreationExpression( + IdentifierName(nameof(PurchaseMenu))) + .WithInitializer( + InitializerExpression( + SyntaxKind.ObjectInitializerExpression, + SeparatedList( + SyntaxNodeList( + Assignment(nameof(PurchaseMenu.ExcelSheet), purchaseMenu.ExcelSheet, + emptyMenu.ExcelSheet) + .AsSyntaxNodeOrToken(), + Assignment(nameof(PurchaseMenu.Key), purchaseMenu.Key, + emptyMenu.Key) + .AsSyntaxNodeOrToken())))); + } +} diff --git a/QuestPathGenerator/RoslynElements/QuestStepExtensions.cs b/QuestPathGenerator/RoslynElements/QuestStepExtensions.cs index 11cdc214..45f2a858 100644 --- a/QuestPathGenerator/RoslynElements/QuestStepExtensions.cs +++ b/QuestPathGenerator/RoslynElements/QuestStepExtensions.cs @@ -62,6 +62,9 @@ internal static class QuestStepExtensions Assignment(nameof(QuestStep.IgnoreDistanceToObject), step.IgnoreDistanceToObject, emptyStep.IgnoreDistanceToObject) .AsSyntaxNodeOrToken(), + Assignment(nameof(QuestStep.RestartNavigationIfCancelled), + step.RestartNavigationIfCancelled, emptyStep.RestartNavigationIfCancelled) + .AsSyntaxNodeOrToken(), Assignment(nameof(QuestStep.Comment), step.Comment, emptyStep.Comment) .AsSyntaxNodeOrToken(), Assignment(nameof(QuestStep.Aetheryte), step.Aetheryte, emptyStep.Aetheryte) @@ -115,8 +118,8 @@ internal static class QuestStepExtensions AssignmentList(nameof(QuestStep.RequiredQuestVariables), step.RequiredQuestVariables) .AsSyntaxNodeOrToken(), - AssignmentList(nameof(QuestStep.RequiredGatheredItems), - step.RequiredGatheredItems), + AssignmentList(nameof(QuestStep.ItemsToGather), + step.ItemsToGather), AssignmentList(nameof(QuestStep.CompletionQuestVariablesFlags), step.CompletionQuestVariablesFlags) .AsSyntaxNodeOrToken(), @@ -124,6 +127,8 @@ internal static class QuestStepExtensions .AsSyntaxNodeOrToken(), AssignmentList(nameof(QuestStep.PointMenuChoices), step.PointMenuChoices) .AsSyntaxNodeOrToken(), + Assignment(nameof(QuestStep.PurchaseMenu), step.PurchaseMenu, emptyStep.PurchaseMenu) + .AsSyntaxNodeOrToken(), Assignment(nameof(QuestStep.PickUpQuestId), step.PickUpQuestId, emptyStep.PickUpQuestId) .AsSyntaxNodeOrToken(), diff --git a/QuestPathGenerator/RoslynElements/SkipConditionsExtensions.cs b/QuestPathGenerator/RoslynElements/SkipConditionsExtensions.cs index 87d5e0a2..e904e0f7 100644 --- a/QuestPathGenerator/RoslynElements/SkipConditionsExtensions.cs +++ b/QuestPathGenerator/RoslynElements/SkipConditionsExtensions.cs @@ -65,6 +65,8 @@ internal static class SkipConditionsExtensions skipStepConditions.QuestsAccepted).AsSyntaxNodeOrToken(), AssignmentList(nameof(SkipStepConditions.QuestsCompleted), skipStepConditions.QuestsCompleted).AsSyntaxNodeOrToken(), + AssignmentList(nameof(SkipStepConditions.NotNamePlateIconId), + skipStepConditions.NotNamePlateIconId).AsSyntaxNodeOrToken(), Assignment(nameof(SkipStepConditions.AetheryteLocked), skipStepConditions.AetheryteLocked, emptyStep.AetheryteLocked) .AsSyntaxNodeOrToken(), @@ -109,6 +111,9 @@ internal static class SkipConditionsExtensions .AsSyntaxNodeOrToken(), Assignment(nameof(NearPositionCondition.MaximumDistance), nearPositionCondition.MaximumDistance, emptyCondition.MaximumDistance) + .AsSyntaxNodeOrToken(), + Assignment(nameof(NearPositionCondition.TerritoryId), + nearPositionCondition.TerritoryId, emptyCondition.TerritoryId) .AsSyntaxNodeOrToken())))); } @@ -128,6 +133,10 @@ internal static class SkipConditionsExtensions skipAetheryteCondition.InSameTerritory, emptyAetheryte.InSameTerritory), AssignmentList(nameof(SkipAetheryteCondition.InTerritory), skipAetheryteCondition.InTerritory), + AssignmentList(nameof(SkipAetheryteCondition.QuestsAccepted), + skipAetheryteCondition.QuestsAccepted), + AssignmentList(nameof(skipAetheryteCondition.QuestsCompleted), + skipAetheryteCondition.QuestsCompleted), Assignment(nameof(SkipAetheryteCondition.AetheryteLocked), skipAetheryteCondition.AetheryteLocked, emptyAetheryte.AetheryteLocked) .AsSyntaxNodeOrToken(), diff --git a/QuestPathGenerator/RoslynShortcuts.cs b/QuestPathGenerator/RoslynShortcuts.cs index cc146a0b..4147e47b 100644 --- a/QuestPathGenerator/RoslynShortcuts.cs +++ b/QuestPathGenerator/RoslynShortcuts.cs @@ -57,6 +57,7 @@ public static class RoslynShortcuts DialogueChoice dialogueChoice => dialogueChoice.ToExpressionSyntax(), JumpDestination jumpDestination => jumpDestination.ToExpressionSyntax(), ExcelRef excelRef => excelRef.ToExpressionSyntax(), + PurchaseMenu purchaseMenu => purchaseMenu.ToExpressionSyntax(), ComplexCombatData complexCombatData => complexCombatData.ToExpressionSyntax(), QuestWorkValue questWorkValue => questWorkValue.ToExpressionSyntax(), List list => list.ToExpressionSyntax(), // TODO fix in AssignmentList diff --git a/QuestPathGenerator/packages.lock.json b/QuestPathGenerator/packages.lock.json index 77bbdf0a..44b2a011 100644 --- a/QuestPathGenerator/packages.lock.json +++ b/QuestPathGenerator/packages.lock.json @@ -68,9 +68,9 @@ }, "System.Text.Json": { "type": "Direct", - "requested": "[8.0.4, )", - "resolved": "8.0.4", - "contentHash": "bAkhgDJ88XTsqczoxEMliSrpijKZHhbJQldhAmObj/RbrN3sU5dcokuXmWJWsdQAhiMJ9bTayWsL1C9fbbCRhw==", + "requested": "[8.0.5, )", + "resolved": "8.0.5", + "contentHash": "0f1B50Ss7rqxXiaBJyzUu9bWFOO2/zSlifZ/UNMdiIpDYe4cY4LQQicP4nirK1OS31I43rn062UIJ1Q9bpmHpg==", "dependencies": { "Microsoft.Bcl.AsyncInterfaces": "8.0.0", "System.Buffers": "4.5.1", @@ -264,7 +264,7 @@ "questionable.model": { "type": "Project", "dependencies": { - "System.Text.Json": "[8.0.4, )" + "System.Text.Json": "[8.0.5, )" } } } diff --git a/QuestPaths/2.x - A Realm Reborn/Raid Quests/1200_Sanding It Down.json b/QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/1200_Sanding It Down.json similarity index 100% rename from QuestPaths/2.x - A Realm Reborn/Raid Quests/1200_Sanding It Down.json rename to QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/1200_Sanding It Down.json diff --git a/QuestPaths/2.x - A Realm Reborn/Raid Quests/1201_A Performance for the Ages.json b/QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/1201_A Performance for the Ages.json similarity index 100% rename from QuestPaths/2.x - A Realm Reborn/Raid Quests/1201_A Performance for the Ages.json rename to QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/1201_A Performance for the Ages.json diff --git a/QuestPaths/2.x - A Realm Reborn/Raid Quests/1202_Labyrinth of the Ancients.json b/QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/1202_Labyrinth of the Ancients.json similarity index 100% rename from QuestPaths/2.x - A Realm Reborn/Raid Quests/1202_Labyrinth of the Ancients.json rename to QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/1202_Labyrinth of the Ancients.json diff --git a/QuestPaths/2.x - A Realm Reborn/Raid Quests/1203_For Prosperity.json b/QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/1203_For Prosperity.json similarity index 100% rename from QuestPaths/2.x - A Realm Reborn/Raid Quests/1203_For Prosperity.json rename to QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/1203_For Prosperity.json diff --git a/QuestPaths/2.x - A Realm Reborn/Raid Quests/1474_Syrcus Tower.json b/QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/1474_Syrcus Tower.json similarity index 100% rename from QuestPaths/2.x - A Realm Reborn/Raid Quests/1474_Syrcus Tower.json rename to QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/1474_Syrcus Tower.json diff --git a/QuestPaths/2.x - A Realm Reborn/Raid Quests/1709_Legacy of Allag.json b/QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/1709_Legacy of Allag.json similarity index 94% rename from QuestPaths/2.x - A Realm Reborn/Raid Quests/1709_Legacy of Allag.json rename to QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/1709_Legacy of Allag.json index 687fc403..1e363fb4 100644 --- a/QuestPaths/2.x - A Realm Reborn/Raid Quests/1709_Legacy of Allag.json +++ b/QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/1709_Legacy of Allag.json @@ -337,16 +337,6 @@ "InteractionType": "WalkTo", "Fly": true }, - { - "Position": { - "X": 233.0817, - "Y": 8, - "Z": -21.83023 - }, - "TerritoryId": 146, - "InteractionType": "WalkTo", - "Fly": true - }, { "DataId": 2000077, "Position": { @@ -360,18 +350,16 @@ "KillEnemyDataIds": [ 9489 ], - "$": "0 0 0 0 0 0 -> 16 17 0 0 0 128" - }, - { - "Position": { - "X": 614.4023, - "Y": 301.81046, - "Z": -101.94888 - }, - "TerritoryId": 155, - "InteractionType": "WalkTo", - "Fly": true, - "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead" + "$": "0 0 0 0 0 0 -> 16 17 0 0 0 128", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ], + "Fly": true }, { "DataId": 2000078, @@ -386,7 +374,17 @@ "KillEnemyDataIds": [ 9490 ], - "$": "16 17 0 0 0 128 -> 0 17 0 0 0 0" + "Fly": true, + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "$": "16 17 0 0 0 128 -> 0 17 0 0 0 0", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] } ] }, diff --git a/QuestPaths/2.x - A Realm Reborn/Raid Quests/494_The World of Darkness.json b/QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/494_The World of Darkness.json similarity index 98% rename from QuestPaths/2.x - A Realm Reborn/Raid Quests/494_The World of Darkness.json rename to QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/494_The World of Darkness.json index 82facbb5..9fec034e 100644 --- a/QuestPaths/2.x - A Realm Reborn/Raid Quests/494_The World of Darkness.json +++ b/QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/494_The World of Darkness.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "JerryWester", - "TerritoryBlacklist": [ - 151 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/Raid Quests/495_The Light of Hope.json b/QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/495_The Light of Hope.json similarity index 100% rename from QuestPaths/2.x - A Realm Reborn/Raid Quests/495_The Light of Hope.json rename to QuestPaths/2.x - A Realm Reborn/Alliance Raid Quests/495_The Light of Hope.json diff --git a/QuestPaths/2.x - A Realm Reborn/Allied Societies/Amalj'aa/Dailies/1222_A Shell to Scry On.json b/QuestPaths/2.x - A Realm Reborn/Allied Societies/Amalj'aa/Dailies/1222_A Shell to Scry On.json new file mode 100644 index 00000000..afc10e11 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Allied Societies/Amalj'aa/Dailies/1222_A Shell to Scry On.json @@ -0,0 +1,76 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1005550, + "Position": { + "X": 105.27197, + "Y": 15.359643, + "Z": -357.3816 + }, + "TerritoryId": 146, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -84.12953, + "Y": -14.744684, + "Z": -148.0814 + }, + "TerritoryId": 146, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 134, + "MinimumKillCount": 2 + } + ], + "Fly": true + }, + { + "Position": { + "X": -253.56975, + "Y": 6.8785334, + "Z": 162.0949 + }, + "TerritoryId": 146, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 358, + "MinimumKillCount": 1 + } + ], + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1005550, + "Position": { + "X": 105.27197, + "Y": 15.359643, + "Z": -357.3816 + }, + "TerritoryId": 146, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Allied Societies/Amalj'aa/Dailies/1228_Losing One's Tempered.json b/QuestPaths/2.x - A Realm Reborn/Allied Societies/Amalj'aa/Dailies/1228_Losing One's Tempered.json new file mode 100644 index 00000000..a7c09b47 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Allied Societies/Amalj'aa/Dailies/1228_Losing One's Tempered.json @@ -0,0 +1,114 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1005550, + "Position": { + "X": 105.27197, + "Y": 15.359643, + "Z": -357.3816 + }, + "TerritoryId": 146, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2003169, + "Position": { + "X": -191.18036, + "Y": 3.6774292, + "Z": -162.00513 + }, + "TerritoryId": 146, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [80], + "Fly": true + }, + { + "DataId": 80, + "Position": { + "X": -198.6194, + "Y": 4.4395595, + "Z": -156.7357 + }, + "TerritoryId": 146, + "InteractionType": "UseItem", + "ItemId": 2001191 + }, + { + "DataId": 2003168, + "Position": { + "X": -155.44366, + "Y": 3.8604736, + "Z": -132.21948 + }, + "TerritoryId": 146, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [80], + "Fly": true + }, + { + "DataId": 80, + "Position": { + "X": -159.83832, + "Y": 4.2440715, + "Z": -136.43097 + }, + "TerritoryId": 146, + "InteractionType": "UseItem", + "ItemId": 2001191 + }, + { + "DataId": 2003172, + "Position": { + "X": -19.36377, + "Y": 0.47296143, + "Z": 15.182739 + }, + "TerritoryId": 146, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [80], + "Fly": true + }, + { + "DataId": 81, + "Position": { + "X": -19.760498, + "Y": 0.97421986, + "Z": 19.790894 + }, + "TerritoryId": 146, + "InteractionType": "UseItem", + "ItemId": 2001191 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1005550, + "Position": { + "X": 105.27197, + "Y": 15.359643, + "Z": -357.3816 + }, + "TerritoryId": 146, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Allied Societies/Amalj'aa/Dailies/1231_Blitzing the Beacons.json b/QuestPaths/2.x - A Realm Reborn/Allied Societies/Amalj'aa/Dailies/1231_Blitzing the Beacons.json new file mode 100644 index 00000000..232222cb --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Allied Societies/Amalj'aa/Dailies/1231_Blitzing the Beacons.json @@ -0,0 +1,68 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1005550, + "Position": { + "X": 105.27197, + "Y": 15.359643, + "Z": -357.3816 + }, + "TerritoryId": 146, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -9.631764, + "Y": 4.530592, + "Z": -52.115612 + }, + "TerritoryId": 146, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 2452, + "MinimumKillCount": 2 + } + ], + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": -74.8761, + "Y": -1.9533517, + "Z": -51.731575 + }, + "TerritoryId": 146, + "InteractionType": "WalkTo" + }, + { + "DataId": 1005550, + "Position": { + "X": 105.27197, + "Y": 15.359643, + "Z": -357.3816 + }, + "TerritoryId": 146, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/ALC/190_So You Want to Be an Alchemist.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/ALC/190_So You Want to Be an Alchemist.json new file mode 100644 index 00000000..0c9c4a30 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/ALC/190_So You Want to Be an Alchemist.json @@ -0,0 +1,41 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1002281, + "Position": { + "X": -115.739685, + "Y": 41.600117, + "Z": 118.88306 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Alchemists' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + }, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSALC001_00190_Q1_1", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/ALC/575_Way of the Alchemist.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/ALC/575_Way of the Alchemist.json new file mode 100644 index 00000000..8a8c2e40 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/ALC/575_Way of the Alchemist.json @@ -0,0 +1,43 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1002281, + "Position": { + "X": -115.739685, + "Y": 41.600117, + "Z": 118.88306 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1002299, + "Position": { + "X": -98.8938, + "Y": 40.200146, + "Z": 120.83618 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSALC011_00575_Q1_1", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/ARM/186_So You Want to Be an Armorer.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/ARM/186_So You Want to Be an Armorer.json new file mode 100644 index 00000000..872c6267 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/ARM/186_So You Want to Be an Armorer.json @@ -0,0 +1,41 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000998, + "Position": { + "X": -51.651794, + "Y": 42.79979, + "Z": 190.41736 + }, + "TerritoryId": 128, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] The Aftcastle" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 128 + ] + } + }, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSARM001_00186_Q1_000_1", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/ARM/273_Way of the Armorer.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/ARM/273_Way of the Armorer.json new file mode 100644 index 00000000..955356e2 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/ARM/273_Way of the Armorer.json @@ -0,0 +1,43 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000998, + "Position": { + "X": -51.651794, + "Y": 42.79979, + "Z": 190.41736 + }, + "TerritoryId": 128, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1001000, + "Position": { + "X": -32.028687, + "Y": 41.499985, + "Z": 208.39233 + }, + "TerritoryId": 128, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSARM011_00273_Q1_000_1", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BLM/183_So You Want to Be a Thaumaturge.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BLM/183_So You Want to Be a Thaumaturge.json new file mode 100644 index 00000000..e4f58a84 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BLM/183_So You Want to Be a Thaumaturge.json @@ -0,0 +1,38 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1002279, + "Position": { + "X": -196.8872, + "Y": 18.459997, + "Z": 59.952637 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Thaumaturges' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSTHM001_00183_Q1_000_1", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BLM/344_Way of the Thaumaturge.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BLM/344_Way of the Thaumaturge.json new file mode 100644 index 00000000..902c1ef9 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BLM/344_Way of the Thaumaturge.json @@ -0,0 +1,44 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1002279, + "Position": { + "X": -196.8872, + "Y": 18.459997, + "Z": 59.952637 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1001709, + "Position": { + "X": -240.4975, + "Y": 18.7, + "Z": 85.58777 + }, + "TerritoryId": 130, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSTHM011_00344_Q1_001_1", + "Yes": true + } + ], + "NextQuestId": 553 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BLM/351_The Threat of Perplexity.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BLM/351_The Threat of Perplexity.json new file mode 100644 index 00000000..75d2bceb --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BLM/351_The Threat of Perplexity.json @@ -0,0 +1,217 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "pot0to", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1001708, + "Position": { + "X": -250.3548, + "Y": 18, + "Z": 80.88806 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Thaumaturges' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 130 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1001712, + "Position": { + "X": -241.50458, + "Y": 19.57727, + "Z": 84.64172 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1002305, + "Position": { + "X": 14.419739, + "Y": 22.157166, + "Z": 72.3125 + }, + "TerritoryId": 140, + "Fly": true, + "InteractionType": "Interact", + "AetheryteShortcut": "Western Thanalan - Horizon", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 140 + ] + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1002324, + "Position": { + "X": 112.80994, + "Y": 17.536886, + "Z": 31.296265 + }, + "TerritoryId": 140, + "Fly": true, + "InteractionType": "Interact" + }, + { + "DataId": 1002322, + "Position": { + "X": 116.89929, + "Y": 17.536886, + "Z": 12.954895 + }, + "TerritoryId": 140, + "InteractionType": "Interact" + }, + { + "DataId": 1002323, + "Position": { + "X": 132.43298, + "Y": 21.104982, + "Z": 9.018005 + }, + "TerritoryId": 140, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1002305, + "Position": { + "X": 14.419739, + "Y": 22.157166, + "Z": 72.3125 + }, + "TerritoryId": 140, + "Fly": true, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 2001472, + "Position": { + "X": 150.71338, + "Y": 18.783813, + "Z": -5.7526855 + }, + "TerritoryId": 140, + "Fly": true, + "InteractionType": "SinglePlayerDuty" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1002305, + "Position": { + "X": 14.419739, + "Y": 22.157166, + "Z": 72.3125 + }, + "TerritoryId": 140, + "Fly": true, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 2001474, + "Position": { + "X": 96.238525, + "Y": 16.952698, + "Z": 188.83032 + }, + "TerritoryId": 140, + "Fly": true, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1001712, + "Position": { + "X": -241.50458, + "Y": 19.57727, + "Z": 84.64172 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Thaumaturges' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 130 + ] + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1001708, + "Position": { + "X": -250.3548, + "Y": 18, + "Z": 80.88806 + }, + "TerritoryId": 130, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1085_A Song of Bards and Bowmen.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1085_A Song of Bards and Bowmen.json new file mode 100644 index 00000000..e22e5d58 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1085_A Song of Bards and Bowmen.json @@ -0,0 +1,130 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "pot0to", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1006750, + "Position": { + "X": 16.464417, + "Y": 6.750492, + "Z": -7.3396606 + }, + "TerritoryId": 153, + "InteractionType": "Interact", + "AetheryteShortcut": "South Shroud - Quarrymill", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1007834, + "Position": { + "X": 447.2876, + "Y": 2.147105, + "Z": 21.86615 + }, + "TerritoryId": 153, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2002364, + "Position": { + "X": 457.9995, + "Y": 0.44250488, + "Z": -106.73688 + }, + "TerritoryId": 153, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 440.87814, + "Y": 2.8651512, + "Z": 25.295788 + }, + "InteractionType": "WalkTo", + "TerritoryId": 153, + "Fly": true + }, + { + "DataId": 1007834, + "Position": { + "X": 447.2876, + "Y": 2.147105, + "Z": 21.86615 + }, + "StopDistance": 7, + "TerritoryId": 153, + "InteractionType": "Interact", + "Fly": false + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006750, + "Position": { + "X": 16.464417, + "Y": 6.750492, + "Z": -7.3396606 + }, + "TerritoryId": 153, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 1086 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1086_The Archer's Anthem.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1086_The Archer's Anthem.json new file mode 100644 index 00000000..cced8794 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1086_The Archer's Anthem.json @@ -0,0 +1,87 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "pot0to", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "TerritoryId": 153, + "InteractionType": "EquipItem", + "ItemId": 4546, + "AetheryteShortcut": "South Shroud - Quarrymill", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "TerritoryId": 153, + "InteractionType": "EquipRecommended" + }, + { + "DataId": 1006750, + "Position": { + "X": 16.464417, + "Y": 6.750492, + "Z": -7.3396606 + }, + "TerritoryId": 153, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2002366, + "Position": { + "X": -143.0534, + "Y": 68.192505, + "Z": 586.1448 + }, + "StopDistance": 0.5, + "TerritoryId": 137, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 1945 + ], + "AetheryteShortcut": "Eastern La Noscea - Wineport", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006750, + "Position": { + "X": 16.464417, + "Y": 6.750492, + "Z": -7.3396606 + }, + "TerritoryId": 153, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "South Shroud - Quarrymill", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "NextQuestId": 1087 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1087_Bard's-eye View.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1087_Bard's-eye View.json new file mode 100644 index 00000000..f7d9359f --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1087_Bard's-eye View.json @@ -0,0 +1,77 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "pot0to", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006750, + "Position": { + "X": 16.464417, + "Y": 6.750492, + "Z": -7.3396606 + }, + "TerritoryId": 153, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "South Shroud - Quarrymill", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2002365, + "Position": { + "X": 272.05298, + "Y": 18.875366, + "Z": -164.53809 + }, + "TerritoryId": 145, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 58 + ], + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006750, + "Position": { + "X": 16.464417, + "Y": 6.750492, + "Z": -7.3396606 + }, + "TerritoryId": 153, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "South Shroud - Quarrymill", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "NextQuestId": 1088 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1088_Doing It the Bard Way.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1088_Doing It the Bard Way.json new file mode 100644 index 00000000..50b44bf8 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1088_Doing It the Bard Way.json @@ -0,0 +1,76 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "pot0to", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006750, + "Position": { + "X": 16.464417, + "Y": 6.750492, + "Z": -7.3396606 + }, + "TerritoryId": 153, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "South Shroud - Quarrymill", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2002367, + "Position": { + "X": 104.32593, + "Y": -21.774658, + "Z": 171.00781 + }, + "TerritoryId": 154, + "InteractionType": "UseItem", + "ItemId": 2000952, + "EnemySpawnType": "AutoOnEnterArea", + "AetheryteShortcut": "North Shroud - Fallgourd Float", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "$": "Actually a SinglePlayerDuty" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006750, + "Position": { + "X": 16.464417, + "Y": 6.750492, + "Z": -7.3396606 + }, + "TerritoryId": 153, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "South Shroud - Quarrymill", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "NextQuestId": 1089 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1089_Pieces of the Past.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1089_Pieces of the Past.json new file mode 100644 index 00000000..5336502f --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1089_Pieces of the Past.json @@ -0,0 +1,152 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "pot0to", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006750, + "Position": { + "X": 16.464417, + "Y": 6.750492, + "Z": -7.3396606 + }, + "TerritoryId": 153, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "South Shroud - Quarrymill", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_JOBBRD451_01089_Q1_000_000", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2002528, + "Position": { + "X": 512.291, + "Y": 10.482849, + "Z": 148.30237 + }, + "TerritoryId": 153, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2002530, + "Position": { + "X": 576.2263, + "Y": -24.002502, + "Z": -423.75836 + }, + "TerritoryId": 152, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "East Shroud - Hawthorne Hut", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + }, + { + "Position": { + "X": -143.16391, + "Y": -25.75711, + "Z": 34.669674 + }, + "TerritoryId": 138, + "Fly": true, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Western La Noscea - Aleport" + }, + { + "DataId": 2002527, + "Position": { + "X": -168.29181, + "Y": -21.5, + "Z": 44.144287 + }, + "TerritoryId": 138, + "InteractionType": "Interact", + "Fly": false, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2002529, + "Position": { + "X": -324.7273, + "Y": 87.96814, + "Z": -133.50122 + }, + "TerritoryId": 147, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Northern Thanalan - Ceruleum Processing Plant", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006750, + "Position": { + "X": 16.464417, + "Y": 6.750492, + "Z": -7.3396606 + }, + "TerritoryId": 153, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "South Shroud - Quarrymill", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "NextQuestId": 1090 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1090_Requiem for the Fallen.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1090_Requiem for the Fallen.json new file mode 100644 index 00000000..733606d0 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/1090_Requiem for the Fallen.json @@ -0,0 +1,64 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "pot0to", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006750, + "Position": { + "X": 16.464417, + "Y": 6.750492, + "Z": -7.3396606 + }, + "TerritoryId": 153, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "South Shroud - Quarrymill", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2002373, + "Position": { + "X": 72.098755, + "Y": 227.19153, + "Z": 380.84985 + }, + "TerritoryId": 155, + "InteractionType": "UseItem", + "ItemId": 2000953, + "EnemySpawnType": "AutoOnEnterArea", + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "Fly": true, + "$": "Actually a SinglePlayerDuty" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1007891, + "Position": { + "X": 70.17627, + "Y": 226.72212, + "Z": 381.30762 + }, + "TerritoryId": 155, + "InteractionType": "CompleteQuest", + "NextQuestId": 1713 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/131_Way of the Archer.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/131_Way of the Archer.json new file mode 100644 index 00000000..33fd9348 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/131_Way of the Archer.json @@ -0,0 +1,44 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000197, + "Position": { + "X": 201.31226, + "Y": -3.1634123E-15, + "Z": 43.900146 + }, + "TerritoryId": 132, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "StopDistance": 5, + "TerritoryId": 132, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSARC998_00131_Q1_000_1", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/134_Training with Leih.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/134_Training with Leih.json new file mode 100644 index 00000000..bcae3086 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/134_Training with Leih.json @@ -0,0 +1,387 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1000199, + "Position": { + "X": 211.13904, + "Y": 1.5032018E-05, + "Z": 28.580078 + }, + "TerritoryId": 132, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -87.448326, + "Y": -3.8114734, + "Z": -77.68485 + }, + "TerritoryId": 148, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Central Shroud - Bentbranch Meadows", + "Fly": true + }, + { + "DataId": 2001177, + "Position": { + "X": -88.24298, + "Y": 3.768982, + "Z": -88.24298 + }, + "TerritoryId": 148, + "StopDistance": 15, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 2 + ] + }, + { + "Position": { + "X": -113.806755, + "Y": -3.824695, + "Z": -61.20561 + }, + "TerritoryId": 148, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 4 + ] + } + } + }, + { + "DataId": 2001175, + "Position": { + "X": -115.58716, + "Y": -3.402832, + "Z": -51.07196 + }, + "TerritoryId": 148, + "StopDistance": 15, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 4 + ] + }, + { + "Position": { + "X": -142.90863, + "Y": -1.355497, + "Z": -69.45994 + }, + "TerritoryId": 148, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 8 + ] + } + } + }, + { + "DataId": 2000959, + "Position": { + "X": -143.32806, + "Y": -0.41204834, + "Z": -58.884644 + }, + "TerritoryId": 148, + "StopDistance": 15, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 8 + ] + }, + { + "Position": { + "X": -154.95493, + "Y": 4.0352364, + "Z": -132.85217 + }, + "TerritoryId": 148, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + } + } + }, + { + "DataId": 2000958, + "Position": { + "X": -166.97955, + "Y": 10.2387085, + "Z": -138.41461 + }, + "TerritoryId": 148, + "StopDistance": 15, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + }, + { + "Position": { + "X": -114.08684, + "Y": 7.6589117, + "Z": -173.19547 + }, + "TerritoryId": 148, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + } + }, + { + "DataId": 2000957, + "Position": { + "X": -120.68359, + "Y": 12.49707, + "Z": -182.39111 + }, + "TerritoryId": 148, + "StopDistance": 15, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "Position": { + "X": -74.71171, + "Y": -4, + "Z": -190.44055 + }, + "TerritoryId": 148, + "InteractionType": "WalkTo" + }, + { + "DataId": 2000956, + "Position": { + "X": -80.76605, + "Y": -2.3651733, + "Z": -196.49048 + }, + "TerritoryId": 148, + "StopDistance": 15, + "InteractionType": "Action", + "Action": "Heavy Shot" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1000199, + "Position": { + "X": 211.13904, + "Y": 1.5032018E-05, + "Z": 28.580078 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -431.09494, + "Y": 2.9039853, + "Z": 239.26413 + }, + "StopDistance": 0.5, + "TerritoryId": 152, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 5, + "MinimumKillCount": 8, + "$": "Slay northern vultures.", + "CompletionQuestVariablesFlags": [ + null, + { + "High": 8 + }, + null, + null, + null, + null + ] + }, + { + "DataId": 39, + "MinimumKillCount": 8, + "$": "Slay tree slugs.", + "CompletionQuestVariablesFlags": [ + { + "Low": 8 + }, + null, + null, + null, + null, + null + ] + } + ], + "AetheryteShortcut": "East Shroud - Hawthorne Hut", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1000199, + "Position": { + "X": 211.13904, + "Y": 1.5032018E-05, + "Z": 28.580078 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSARC997_00134_Q1_000_1", + "Yes": true + } + ], + "NextQuestId": 68 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/181_So You Want to Be an Archer.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/181_So You Want to Be an Archer.json new file mode 100644 index 00000000..8dd398f7 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/181_So You Want to Be an Archer.json @@ -0,0 +1,39 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000197, + "Position": { + "X": 201.31226, + "Y": -3.1634123E-15, + "Z": 43.900146 + }, + "TerritoryId": 132, + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSARC999_00181_Q1_000_1", + "Yes": true, + "$": "No Godbert prompt" + } + ], + "InteractionType": "AcceptQuest", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/219_My First Bow.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/219_My First Bow.json new file mode 100644 index 00000000..b81a741f --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/219_My First Bow.json @@ -0,0 +1,157 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "pot0to", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "TerritoryId": 132, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 117.47766, + "Y": 17.661993, + "Z": -247.24017 + }, + "TerritoryId": 148, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 37, + "MinimumKillCount": 3, + "$": "Slay ground squirrels as an archer", + "CompletionQuestVariablesFlags": [ + { + "Low": 3 + }, + null, + null, + null, + null, + null + ] + }, + { + "DataId": 49, + "MinimumKillCount": 3, + "CompletionQuestVariablesFlags": [ + null, + { + "High": 3 + }, + null, + null, + null, + null + ], + "$": "Slay little ladybugs as an archer" + } + ], + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Archers' Guild", + "[Gridania] Blue Badger Gate (Central Shroud)" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 148 + ] + } + }, + "CompletionQuestVariablesFlags": [ + { + "Low": 3 + }, + { + "High": 3 + }, + null, + null, + null, + null + ] + }, + { + "Position": { + "X": 126.943115, + "Y": 2.910592, + "Z": -180.54787 + }, + "TerritoryId": 148, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 47, + "MinimumKillCount": 3, + "$": "Slay forest funguars as an archer" + } + ], + "CompletionQuestVariablesFlags": [ + null, + { + "Low": 3 + }, + null, + null, + null, + null + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "NextQuestId": 46 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/21_Way of the Archer.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/21_Way of the Archer.json new file mode 100644 index 00000000..860bf666 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/21_Way of the Archer.json @@ -0,0 +1,195 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000197, + "Position": { + "X": 201.31226, + "Y": -3.1634123e-15, + "Z": 43.900146 + }, + "TerritoryId": 132, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSARC000_00021_Q1_000_1", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 97.18397, + "Y": 17.128555, + "Z": -269.5008 + }, + "TerritoryId": 148, + "AethernetShortcut": [ + "[Gridania] Archers' Guild", + "[Gridania] Blue Badger Gate (Central Shroud)" + ], + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 37, + "CompletionQuestVariablesFlags": [ + { + "Low": 3 + }, + null, + null, + null, + null, + null + ], + "MinimumKillCount": 3 + } + ], + "CompletionQuestVariablesFlags": [ + { + "Low": 3 + }, + null, + null, + null, + null, + null + ], + "$": "0 0 0 0 0 0 -> 19 0 0 0 0 0" + }, + { + "Position": { + "X": 119.449745, + "Y": 17.399649, + "Z": -259.6467 + }, + "TerritoryId": 148, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 49, + "CompletionQuestVariablesFlags": [ + null, + { + "High": 3 + }, + null, + null, + null, + null + ], + "MinimumKillCount": 3 + } + ], + "CompletionQuestVariablesFlags": [ + null, + { + "High": 3 + }, + null, + null, + null, + null + ], + "$": "19 0 0 0 0 0 -> 35 48 0 0 0 0" + }, + { + "Position": { + "X": 83.756714, + "Y": 4.1801105, + "Z": -191.24133 + }, + "TerritoryId": 148, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 47, + "CompletionQuestVariablesFlags": [ + null, + { + "Low": 3 + }, + null, + null, + null, + null + ], + "MinimumKillCount": 3 + } + ], + "CompletionQuestVariablesFlags": [ + null, + { + "Low": 3 + }, + null, + null, + null, + null + ], + "$": "35 48 0 0 0 0 -> 35 51 0 0 0 0 // This one automatically went to 0 0 0 0 0 0 so I am not sure about the 51 part" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "CompleteQuest", + "NextQuestId": 46 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/46_A Matter of Perspective.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/46_A Matter of Perspective.json new file mode 100644 index 00000000..1a1edfec --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/46_A Matter of Perspective.json @@ -0,0 +1,375 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "pot0to", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2000925, + "Position": { + "X": 187.18237, + "Y": -2.7314453, + "Z": 79.087524 + }, + "TerritoryId": 132, + "StopDistance": 15, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "Position": { + "X": 106.01592, + "Y": 0.14552212, + "Z": 57.230045 + }, + "TerritoryId": 132, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + } + }, + { + "DataId": 2000926, + "Position": { + "X": 113.42029, + "Y": 4.6539917, + "Z": 54.306763 + }, + "TerritoryId": 132, + "StopDistance": 20, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "Position": { + "X": 40.66375, + "Y": 2.5499606, + "Z": 15.033528 + }, + "TerritoryId": 132, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 2 + ] + } + } + }, + { + "DataId": 2000931, + "Position": { + "X": 36.453735, + "Y": 7.248047, + "Z": 10.879639 + }, + "TerritoryId": 132, + "StopDistance": 20, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 2 + ] + }, + { + "Position": { + "X": -4.75964, + "Y": -3.0942674, + "Z": 21.23782 + }, + "TerritoryId": 132, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 8 + ] + } + } + }, + { + "DataId": 2000929, + "Position": { + "X": -5.7526855, + "Y": 2.0598755, + "Z": 30.655273 + }, + "TerritoryId": 132, + "StopDistance": 20, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 8 + ] + }, + { + "Position": { + "X": 31.96446, + "Y": -1.5349445, + "Z": 60.44494 + }, + "TerritoryId": 132, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + } + } + }, + { + "DataId": 2000928, + "Position": { + "X": 33.24939, + "Y": 5.4473877, + "Z": 70.63391 + }, + "TerritoryId": 132, + "StopDistance": 20, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + }, + { + "Position": { + "X": 65.39101, + "Y": -3.7351668, + "Z": 88.24835 + }, + "TerritoryId": 132, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + } + }, + { + "DataId": 2000930, + "Position": { + "X": 56.595703, + "Y": -3.7385254, + "Z": 96.97107 + }, + "TerritoryId": 132, + "StopDistance": 20, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 303.89548, + "Y": -21.916101, + "Z": 210.33368 + }, + "StopDistance": 0.5, + "TerritoryId": 154, + "AethernetShortcut": [ + "[Gridania] Archers' Guild", + "[Gridania] Yellow Serpent Gate (North Shroud)" + ], + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 5, + "MinimumKillCount": 8, + "$": "Slay opo-opos." + } + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + { + "Low": 8 + }, + null, + null, + null, + null, + null + ] + }, + { + "Position": { + "X": 250.70682, + "Y": -11.9244995, + "Z": 40.554157 + }, + "StopDistance": 0.5, + "TerritoryId": 154, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 32, + "MinimumKillCount": 8, + "$": "Slay microchus." + } + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + { + "High": 8 + }, + null, + null, + null, + null + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "NextQuestId": 134 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/67_School of Hard Nocks.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/67_School of Hard Nocks.json new file mode 100644 index 00000000..092de9a8 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/67_School of Hard Nocks.json @@ -0,0 +1,407 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1000199, + "Position": { + "X": 211.13904, + "Y": 1.5032018e-5, + "Z": 28.580078 + }, + "TerritoryId": 132, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -87.448326, + "Y": -3.8114734, + "Z": -77.68485 + }, + "TerritoryId": 148, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Central Shroud - Bentbranch Meadows", + "Fly": true + }, + { + "DataId": 2001173, + "Position": { + "X": -88.24298, + "Y": 3.768982, + "Z": -88.24298 + }, + "TerritoryId": 148, + "StopDistance": 15, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 2 + ] + }, + { + "Position": { + "X": -113.806755, + "Y": -3.824695, + "Z": -61.20561 + }, + "TerritoryId": 148, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 4 + ] + } + } + }, + { + "DataId": 2001171, + "Position": { + "X": -115.58716, + "Y": -3.402832, + "Z": -51.07196 + }, + "TerritoryId": 148, + "StopDistance": 15, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 4 + ] + }, + { + "Position": { + "X": -142.90863, + "Y": -1.355497, + "Z": -69.45994 + }, + "TerritoryId": 148, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 8 + ] + } + } + }, + { + "DataId": 2000940, + "Position": { + "X": -143.32806, + "Y": -0.41204834, + "Z": -58.884644 + }, + "TerritoryId": 148, + "StopDistance": 15, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 8 + ] + }, + { + "Position": { + "X": -154.95493, + "Y": 4.0352364, + "Z": -132.85217 + }, + "TerritoryId": 148, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + } + } + }, + { + "DataId": 2000939, + "Position": { + "X": -166.97955, + "Y": 10.2387085, + "Z": -138.41461 + }, + "TerritoryId": 148, + "StopDistance": 15, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + }, + { + "Position": { + "X": -114.08684, + "Y": 7.6589117, + "Z": -173.19547 + }, + "TerritoryId": 148, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + } + }, + { + "DataId": 2000938, + "Position": { + "X": -120.68359, + "Y": 12.49707, + "Z": -182.39111 + }, + "TerritoryId": 148, + "StopDistance": 15, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "Position": { + "X": -74.71171, + "Y": -4, + "Z": -190.44055 + }, + "TerritoryId": 148, + "InteractionType": "WalkTo" + }, + { + "DataId": 2000937, + "Position": { + "X": -80.76605, + "Y": -2.3651733, + "Z": -196.49048 + }, + "TerritoryId": 148, + "StopDistance": 15, + "InteractionType": "Action", + "Action": "Heavy Shot" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1000199, + "Position": { + "X": 211.13904, + "Y": 1.5032018e-5, + "Z": 28.580078 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1001263, + "Position": { + "X": 181.41443, + "Y": -2.3519497, + "Z": -240.40594 + }, + "TerritoryId": 133, + "InteractionType": "Interact", + "TargetTerritoryId": 152, + "AethernetShortcut": [ + "[Gridania] Archers' Guild", + "[Gridania] Lancers' Guild" + ], + "SkipConditions": { + "StepIf": { + "AetheryteUnlocked": "East Shroud - Hawthorne Hut" + } + } + }, + { + "Position": { + "X": -431.09494, + "Y": 2.9039853, + "Z": 239.26413 + }, + "StopDistance": 0.5, + "TerritoryId": 152, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 5, + "MinimumKillCount": 8, + "$": "Slay northern vultures.", + "CompletionQuestVariablesFlags": [ + null, + { + "High": 8 + }, + null, + null, + null, + null + ] + }, + { + "DataId": 39, + "MinimumKillCount": 8, + "$": "Slay tree slugs.", + "CompletionQuestVariablesFlags": [ + { + "Low": 8 + }, + null, + null, + null, + null, + null + ] + } + ], + "AetheryteShortcut": "East Shroud - Hawthorne Hut", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1000199, + "Position": { + "X": 211.13904, + "Y": 1.5032018e-5, + "Z": 28.580078 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSARC002_00067_Q1_000_1", + "Yes": true + } + ], + "NextQuestId": 68 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/68_Violators Will Be Shot.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/68_Violators Will Be Shot.json new file mode 100644 index 00000000..bb81bb25 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/68_Violators Will Be Shot.json @@ -0,0 +1,359 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "pot0to", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1000204, + "Position": { + "X": 226.33704, + "Y": 1.9999089, + "Z": 29.06836 + }, + "TerritoryId": 132, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -326.03064, + "Y": 9.169003, + "Z": 323.19617 + }, + "TerritoryId": 152, + "InteractionType": "WalkTo", + "AetheryteShortcut": "East Shroud - Hawthorne Hut", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + } + } + }, + { + "DataId": 2000944, + "Position": { + "X": -330.12903, + "Y": 16.708557, + "Z": 329.67102 + }, + "TerritoryId": 152, + "StopDistance": 20, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + }, + { + "Position": { + "X": -321.1917, + "Y": 0.22361445, + "Z": 297.61597 + }, + "TerritoryId": 152, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + } + }, + { + "DataId": 2000943, + "Position": { + "X": -330.73932, + "Y": 9.262146, + "Z": 290.1808 + }, + "TerritoryId": 152, + "StopDistance": 20, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "Position": { + "X": -358.00266, + "Y": 6.9801626, + "Z": 306.18744 + }, + "TerritoryId": 152, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 8 + ] + } + } + }, + { + "DataId": 2000945, + "Position": { + "X": -364.55334, + "Y": 14.480774, + "Z": 307.60657 + }, + "TerritoryId": 152, + "StopDistance": 20, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 8 + ] + }, + { + "Position": { + "X": -378.32364, + "Y": 6.10847, + "Z": 269.35767 + }, + "TerritoryId": 152, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + } + }, + { + "DataId": 2000942, + "Position": { + "X": -378.53058, + "Y": 9.048584, + "Z": 262.68408 + }, + "TerritoryId": 152, + "StopDistance": 20, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "Position": { + "X": -301.42407, + "Y": 0.17268503, + "Z": 257.9185 + }, + "TerritoryId": 152, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 2 + ] + } + } + }, + { + "DataId": 2001179, + "Position": { + "X": -297.29156, + "Y": 5.996765, + "Z": 250.96509 + }, + "TerritoryId": 152, + "StopDistance": 20, + "InteractionType": "Action", + "Action": "Heavy Shot", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 2 + ] + }, + { + "Position": { + "X": -264.77237, + "Y": -3.2272563, + "Z": 240.00267 + }, + "TerritoryId": 152, + "InteractionType": "WalkTo" + }, + { + "DataId": 2000946, + "Position": { + "X": -269.00134, + "Y": 4.2266846, + "Z": 230.45691 + }, + "TerritoryId": 152, + "StopDistance": 20, + "InteractionType": "Action", + "Action": "Heavy Shot" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1000204, + "Position": { + "X": 226.33704, + "Y": 1.9999089, + "Z": 29.06836 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2000962, + "Position": { + "X": 288.56335, + "Y": -11.306946, + "Z": 52.384155 + }, + "TerritoryId": 154, + "InteractionType": "SinglePlayerDuty", + "AethernetShortcut": [ + "[Gridania] Archers' Guild", + "[Gridania] Yellow Serpent Gate (North Shroud)" + ], + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1000204, + "Position": { + "X": 226.33704, + "Y": 1.9999089, + "Z": 29.06836 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "TerritoryId": 132, + "InteractionType": "CompleteQuest", + "NextQuestId": 70 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/70_To Catch a Poacher.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/70_To Catch a Poacher.json new file mode 100644 index 00000000..a72083ec --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/70_To Catch a Poacher.json @@ -0,0 +1,211 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "pot0to", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -166.19086, + "Y": 8.399985, + "Z": -64.10584 + }, + "TerritoryId": 153, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "Flying": "Locked" + } + }, + "$": "Buscarron SE steps", + "AetheryteShortcut": "South Shroud - Quarrymill" + }, + { + "DataId": 1000590, + "Position": { + "X": -165.9419, + "Y": 9.869227, + "Z": -81.34589 + }, + "TerritoryId": 153, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2000949, + "Position": { + "X": -258.9914, + "Y": 10.330261, + "Z": -46.00598 + }, + "TerritoryId": 153, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 2000948, + "Position": { + "X": -270.00848, + "Y": 15.487854, + "Z": -91.17267 + }, + "TerritoryId": 153, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2000947, + "Position": { + "X": -318.07434, + "Y": 18.936401, + "Z": -165.11792 + }, + "TerritoryId": 153, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2001105, + "Position": { + "X": -173.02203, + "Y": 9.872559, + "Z": -78.690796 + }, + "TerritoryId": 153, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CLSARC004_00070_Q1_000_1", + "Answer": "TEXT_CLSARC004_00070_A1_000_1" + }, + { + "Type": "List", + "Prompt": "TEXT_CLSARC004_00070_Q2_000_1", + "Answer": "TEXT_CLSARC004_00070_A2_000_3" + } + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -192.12004, + "Y": 8.180927, + "Z": -65.00513 + }, + "TerritoryId": 153, + "InteractionType": "WalkTo" + }, + { + "DataId": 2000136, + "Position": { + "X": -295.85718, + "Y": 23.575134, + "Z": -192.34003 + }, + "TerritoryId": 153, + "InteractionType": "SinglePlayerDuty" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1000590, + "Position": { + "X": -165.9419, + "Y": 9.869227, + "Z": -81.34589 + }, + "TerritoryId": 153, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "NextQuestId": 71 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/71_Homecoming.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/71_Homecoming.json new file mode 100644 index 00000000..77c52c23 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/71_Homecoming.json @@ -0,0 +1,139 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "pot0to", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1000204, + "Position": { + "X": 226.33704, + "Y": 1.9999089, + "Z": 29.06836 + }, + "TerritoryId": 132, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1000199, + "Position": { + "X": 211.13904, + "Y": 1.5032133E-05, + "Z": 28.580078 + }, + "TerritoryId": 132, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2000951, + "Position": { + "X": -1.8158569, + "Y": 6.9122925, + "Z": -93.0343 + }, + "TerritoryId": 153, + "InteractionType": "Interact", + "AetheryteShortcut": "South Shroud - Quarrymill", + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CLSARC005_00071_Q1_000_1", + "Answer": "TEXT_CLSARC005_00071_A1_000_1" + } + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 60.130726, + "Y": -5.9999475, + "Z": 63.516415 + }, + "TerritoryId": 148, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Central Shroud - Bentbranch Meadows", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "DataId": 1000534, + "Position": { + "X": 134.47766, + "Y": -7, + "Z": -69.993164 + }, + "TerritoryId": 148, + "InteractionType": "SinglePlayerDuty", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "NextQuestId": 76 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/76_The One That Got Away.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/76_The One That Got Away.json new file mode 100644 index 00000000..d888625a --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BRD/76_The One That Got Away.json @@ -0,0 +1,87 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "pot0to", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1000795, + "Position": { + "X": 278.61438, + "Y": 8.346143, + "Z": -38.223938 + }, + "TerritoryId": 153, + "InteractionType": "SinglePlayerDuty", + "AetheryteShortcut": "South Shroud - Quarrymill", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2000709, + "Position": { + "X": -90.74542, + "Y": 0.015197754, + "Z": 61.08191 + }, + "TerritoryId": 153, + "InteractionType": "SinglePlayerDuty", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000200, + "Position": { + "X": 209.55212, + "Y": 0.9999819, + "Z": 35.01941 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "NextQuestId": 1085 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BSM/185_So You Want to Be a Blacksmith.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BSM/185_So You Want to Be a Blacksmith.json new file mode 100644 index 00000000..32c64c56 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BSM/185_So You Want to Be a Blacksmith.json @@ -0,0 +1,42 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000995, + "Position": { + "X": -52.018066, + "Y": 42.799637, + "Z": 192.2179 + }, + "TerritoryId": 128, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] The Aftcastle" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 128 + ] + } + }, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSBSM001_00185_Q1_000_1", + "Yes": true + } + ], + "NextQuestId": 291 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BSM/291_Way of the Blacksmith.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BSM/291_Way of the Blacksmith.json new file mode 100644 index 00000000..087d1faa --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BSM/291_Way of the Blacksmith.json @@ -0,0 +1,64 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000995, + "Position": { + "X": -52.018066, + "Y": 42.799637, + "Z": 192.2179 + }, + "TerritoryId": 128, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] The Aftcastle" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 128 + ] + } + }, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSBSM011_00291_Q1_000_1", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000997, + "Position": { + "X": -31.265808, + "Y": 44.49997, + "Z": 185.53442 + }, + "TerritoryId": 128, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSBSM011_00291_Q1_000_1", + "Yes": true + } + ], + "NextQuestId": 292 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BTN/193_So You Want to Be a Botanist.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BTN/193_So You Want to Be a Botanist.json new file mode 100644 index 00000000..aad03a63 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BTN/193_So You Want to Be a Botanist.json @@ -0,0 +1,41 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000294, + "Position": { + "X": -238.05603, + "Y": 8, + "Z": -142.93127 + }, + "TerritoryId": 133, + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Botanists' Guild" + ], + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSHRV999_00193_Q1_000_1", + "Yes": true + } + ], + "InteractionType": "AcceptQuest", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 133 + ] + } + } + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/BTN/3_Way of the Botanist.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/BTN/3_Way of the Botanist.json new file mode 100644 index 00000000..1a5f96dc --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/BTN/3_Way of the Botanist.json @@ -0,0 +1,56 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000294, + "Position": { + "X": -238.05603, + "Y": 8, + "Z": -142.93127 + }, + "TerritoryId": 133, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Botanists' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 133 + ] + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000815, + "Position": { + "X": -233.9361, + "Y": 6.668152, + "Z": -171.03839 + }, + "TerritoryId": 133, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSHRV001_00003_Q1_000_1", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/CRP/184_So You Want to Be a Carpenter.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/CRP/184_So You Want to Be a Carpenter.json index 3226ac80..7cc8451f 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/CRP/184_So You Want to Be a Carpenter.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/CRP/184_So You Want to Be a Carpenter.json @@ -1,28 +1,34 @@ -{ - "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "QuestSequence": [ - { - "Sequence": 0, - "Steps": [ - { - "DataId": 1000148, - "Position": { - "X": -20.279297, - "Y": -3.25, - "Z": 45.97534 - }, - "TerritoryId": 132, - "InteractionType": "AcceptQuest", - "DialogueChoices": [ - { - "Type": "YesNo", - "Prompt": "TEXT_CLSWDK999_00184_Q1_000_1", - "Yes": true - } - ] - } - ] - } - ] -} +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000148, + "Position": { + "X": -20.279297, + "Y": -3.25, + "Z": 45.97534 + }, + "TerritoryId": 132, + "AetheryteShortcut": "Gridania", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSWDK999_00184_Q1_000_1", + "Yes": true + } + ], + "InteractionType": "AcceptQuest", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/CUL/191_So You Want to Be a Culinarian.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/CUL/191_So You Want to Be a Culinarian.json new file mode 100644 index 00000000..7a46a5c5 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/CUL/191_So You Want to Be a Culinarian.json @@ -0,0 +1,41 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000946, + "Position": { + "X": -61.142883, + "Y": 42.299698, + "Z": -164.0498 + }, + "TerritoryId": 128, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Culinarians' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 128 + ] + } + }, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSCUL001_00191_Q1_000_1", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/CUL/271_Way of the Culinarian.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/CUL/271_Way of the Culinarian.json new file mode 100644 index 00000000..500efc80 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/CUL/271_Way of the Culinarian.json @@ -0,0 +1,43 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000946, + "Position": { + "X": -61.142883, + "Y": 42.299698, + "Z": -164.0498 + }, + "TerritoryId": 128, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000947, + "Position": { + "X": -54.64258, + "Y": 44, + "Z": -151.23218 + }, + "TerritoryId": 128, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSCUL011_00271_Q1_000_1", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/DRG/180_So You Want to Be a Lancer.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/DRG/180_So You Want to Be a Lancer.json index eaa4aec0..fa199bd5 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/DRG/180_So You Want to Be a Lancer.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/DRG/180_So You Want to Be a Lancer.json @@ -1,41 +1,32 @@ -{ - "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "QuestSequence": [ - { - "Sequence": 0, - "Steps": [ - { - "DataId": 1000251, - "Position": { - "X": 147.08167, - "Y": 15.5, - "Z": -267.99426 - }, - "TerritoryId": 133, - "InteractionType": "AcceptQuest", - "DialogueChoices": [ - { - "Type": "YesNo", - "Prompt": "TEXT_CLSLNC999_00180_Q1_000_1", - "Yes": true - } - ], - "AetheryteShortcut": "Gridania", - "AethernetShortcut": [ - "[Gridania] Aetheryte Plaza", - "[Gridania] Lancers' Guild" - ], - "SkipConditions": { - "AetheryteShortcutIf": { - "InSameTerritory": true, - "InTerritory": [ - 133 - ] - } - } - } - ] - } - ] -} +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000251, + "Position": { + "X": 147.08167, + "Y": 15.5, + "Z": -267.99426 + }, + "TerritoryId": 133, + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Lancers' Guild" + ], + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSLNC999_00180_Q1_000_1", + "Yes": true + } + ], + "InteractionType": "AcceptQuest" + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/FSH/1107_Way of the Fisher.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/FSH/1107_Way of the Fisher.json new file mode 100644 index 00000000..5a771ddd --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/FSH/1107_Way of the Fisher.json @@ -0,0 +1,63 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000859, + "Position": { + "X": -166.76587, + "Y": 4.5496645, + "Z": 150.04187 + }, + "TerritoryId": 129, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Fishermens' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": -167.60791, + "Y": 4.550005, + "Z": 165.35986 + }, + "TerritoryId": 129, + "InteractionType": "WalkTo" + }, + { + "DataId": 1000857, + "Position": { + "X": -165.27051, + "Y": 5.2500057, + "Z": 164.29382 + }, + "TerritoryId": 129, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSFSH011_01107_Q1_000_001", + "Yes": true + } + ], + "InteractionType": "CompleteQuest", + "NextQuestId": 1108 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/FSH/1108_My First Fishing Rod.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/FSH/1108_My First Fishing Rod.json new file mode 100644 index 00000000..c994aadd --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/FSH/1108_My First Fishing Rod.json @@ -0,0 +1,59 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "TerritoryId": 129, + "InteractionType": "EquipItem", + "ItemId": 2571, + "SkipConditions": { + "StepIf": { + "Item": { + "NotInInventory": true + } + } + } + }, + { + "TerritoryId": 129, + "InteractionType": "EquipRecommended" + }, + { + "DataId": 1000857, + "Position": { + "X": -165.27051, + "Y": 5.2500057, + "Z": 164.29382 + }, + "TerritoryId": 129, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000857, + "Position": { + "X": -165.27051, + "Y": 5.2500057, + "Z": 164.29382 + }, + "TerritoryId": 129, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Limsa Lominsa] The Aftcastle", + "[Limsa Lominsa] Fishermens' Guild" + ], + "NextQuestId": 3843, + "Disabled": true, + "Comment": "Catch/turn in fish manually" + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/FSH/1134_So You Want to Be a Fisher.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/FSH/1134_So You Want to Be a Fisher.json new file mode 100644 index 00000000..3b810ba4 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/FSH/1134_So You Want to Be a Fisher.json @@ -0,0 +1,43 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000859, + "Position": { + "X": -166.76587, + "Y": 4.5496645, + "Z": 150.04187 + }, + "TerritoryId": 129, + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Fishermens' Guild" + ], + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSFSH001_01134_Q1_000_1", + "Yes": true + } + ], + "InteractionType": "Interact" + }, + { + "DataId": 1000859, + "Position": { + "X": -166.76587, + "Y": 4.5496645, + "Z": 150.04187 + }, + "TerritoryId": 129, + "InteractionType": "AcceptQuest" + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/FSH/3843_All the Fish in the Sea.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/FSH/3843_All the Fish in the Sea.json new file mode 100644 index 00000000..3bf587f8 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/FSH/3843_All the Fish in the Sea.json @@ -0,0 +1,40 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000858, + "Position": { + "X": -168.47485, + "Y": 4.5500045, + "Z": 163.65295 + }, + "TerritoryId": 129, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1005424, + "Position": { + "X": -412.80237, + "Y": 4, + "Z": 75.05908 + }, + "TerritoryId": 129, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Limsa Lominsa] Fishermens' Guild", + "[Limsa Lominsa] Arcanists' Guild" + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/GSM/187_So You Want to Be a Goldsmith.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/GSM/187_So You Want to Be a Goldsmith.json new file mode 100644 index 00000000..bb79e28f --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/GSM/187_So You Want to Be a Goldsmith.json @@ -0,0 +1,41 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1002280, + "Position": { + "X": -35.385742, + "Y": 13.599962, + "Z": 97.24573 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Goldsmiths' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + }, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSGLD001_00187_Q1_000_1", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/GSM/608_Way of the Goldsmith.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/GSM/608_Way of the Goldsmith.json new file mode 100644 index 00000000..3e9017a1 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/GSM/608_Way of the Goldsmith.json @@ -0,0 +1,43 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1002280, + "Position": { + "X": -35.385742, + "Y": 13.599962, + "Z": 97.24573 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1004093, + "Position": { + "X": -25.162231, + "Y": 12.200003, + "Z": 110.795654 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSGLD011_00608_A1_000_1", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/LTW/105_Way of the Leatherworker.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/LTW/105_Way of the Leatherworker.json new file mode 100644 index 00000000..101c9595 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/LTW/105_Way of the Leatherworker.json @@ -0,0 +1,43 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000352, + "Position": { + "X": 65.69006, + "Y": 8, + "Z": -147.41742 + }, + "TerritoryId": 133, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000691, + "Position": { + "X": 71.97681, + "Y": 8, + "Z": -166.52173 + }, + "TerritoryId": 133, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSTAN000_00105_Q1_000_1", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/LTW/188_So You Want to Be a Leatherworker.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/LTW/188_So You Want to Be a Leatherworker.json new file mode 100644 index 00000000..6928be6d --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/LTW/188_So You Want to Be a Leatherworker.json @@ -0,0 +1,41 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000352, + "Position": { + "X": 65.69006, + "Y": 8, + "Z": -147.41742 + }, + "TerritoryId": 133, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Leatherworkers' Guild & Shaded Bower" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 133 + ] + } + }, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSTAN999_00188_Q1_000_1", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MIN/192_So You Want to Be a Miner.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MIN/192_So You Want to Be a Miner.json index faaf1166..ea8b8257 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/MIN/192_So You Want to Be a Miner.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MIN/192_So You Want to Be a Miner.json @@ -14,6 +14,19 @@ }, "TerritoryId": 131, "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Miners' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + }, "DialogueChoices": [ { "Type": "YesNo", diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MIN/597_Way of the Miner.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MIN/597_Way of the Miner.json index ab55d722..5ab37fe6 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/MIN/597_Way of the Miner.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MIN/597_Way of the Miner.json @@ -13,7 +13,20 @@ "Z": 153.2157 }, "TerritoryId": 131, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Miners' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + } } ] }, diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MIN/599_My First Pickaxe.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MIN/599_My First Pickaxe.json index c9bcf377..feff763b 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/MIN/599_My First Pickaxe.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MIN/599_My First Pickaxe.json @@ -13,13 +13,36 @@ "Z": 157.42725 }, "TerritoryId": 131, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Miners' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + } } ] }, { "Sequence": 255, "Steps": [ + { + "TerritoryId": 131, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "ItemId": 5106, + "ItemCount": 10 + } + ] + }, { "DataId": 1002298, "Position": { @@ -41,13 +64,7 @@ 131 ] } - }, - "RequiredGatheredItems": [ - { - "ItemId": 5106, - "ItemCount": 10 - } - ] + } } ] } diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MIN/600_Know Thy Land.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MIN/600_Know Thy Land.json index ae8417c0..4d15185f 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/MIN/600_Know Thy Land.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MIN/600_Know Thy Land.json @@ -13,13 +13,36 @@ "Z": 157.42725 }, "TerritoryId": 131, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Miners' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + } } ] }, { "Sequence": 255, "Steps": [ + { + "TerritoryId": 131, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "ItemId": 5432, + "ItemCount": 10 + } + ] + }, { "DataId": 1002298, "Position": { @@ -41,13 +64,7 @@ 131 ] } - }, - "RequiredGatheredItems": [ - { - "ItemId": 5432, - "ItemCount": 10 - } - ] + } } ] } diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1061_Brother from Another Mother.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1061_Brother from Another Mother.json new file mode 100644 index 00000000..8c3d6643 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1061_Brother from Another Mother.json @@ -0,0 +1,112 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1001286, + "Position": { + "X": -88.9754, + "Y": 2.55, + "Z": -51.163513 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1006749, + "Position": { + "X": -30.47229, + "Y": 13.599918, + "Z": 95.26196 + }, + "TerritoryId": 131, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Goldsmiths' Guild" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -231.99818, + "Y": -28.997791, + "Z": 123.01078 + }, + "TerritoryId": 141, + "InteractionType": "WalkTo", + "AethernetShortcut": [ + "[Ul'dah] Goldsmiths' Guild", + "[Ul'dah] Gate of Nald (Central Thanalan)" + ], + "Fly": true + }, + { + "DataId": 2002439, + "Position": { + "X": -232.80695, + "Y": -28.793823, + "Z": 125.29175 + }, + "TerritoryId": 141, + "InteractionType": "SinglePlayerDuty", + "ItemId": 2000951 + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2002440, + "Position": { + "X": -232.80695, + "Y": -28.946411, + "Z": 125.29175 + }, + "TerritoryId": 141, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006749, + "Position": { + "X": -30.47229, + "Y": 13.599918, + "Z": 95.26196 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Goldsmiths' Guild" + ], + "NextQuestId": 1062 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1062_Insulted Intelligence.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1062_Insulted Intelligence.json new file mode 100644 index 00000000..c0b8f5fc --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1062_Insulted Intelligence.json @@ -0,0 +1,100 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "TerritoryId": 131, + "InteractionType": "EquipItem", + "ItemId": 4543, + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Goldsmiths' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InTerritory": [ + 130, + 131 + ] + }, + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "DataId": 1006749, + "Position": { + "X": -30.47229, + "Y": 13.599918, + "Z": 95.26196 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2002441, + "Position": { + "X": 689.5093, + "Y": 9.750427, + "Z": 483.32947 + }, + "TerritoryId": 137, + "InteractionType": "Combat", + "EnemySpawnType": "AfterItemUse", + "ItemId": 2000817, + "KillEnemyDataIds": [ + 1925 + ], + "AetheryteShortcut": "Eastern La Noscea - Costa Del Sol", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2002442, + "Position": { + "X": 689.5093, + "Y": 9.750427, + "Z": 483.32947 + }, + "TerritoryId": 137, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006749, + "Position": { + "X": -30.47229, + "Y": 13.599918, + "Z": 95.26196 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Goldsmiths' Guild" + ], + "NextQuestId": 1063 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1063_A Slave to the Aether.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1063_A Slave to the Aether.json new file mode 100644 index 00000000..78b07f3d --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1063_A Slave to the Aether.json @@ -0,0 +1,122 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006749, + "Position": { + "X": -30.47229, + "Y": 13.599918, + "Z": 95.26196 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Goldsmiths' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InTerritory": [ + 130, + 131 + ] + }, + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1007874, + "Position": { + "X": -221.48468, + "Y": 26.16912, + "Z": -343.9536 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "Mount": true, + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2002443, + "Position": { + "X": 24.215942, + "Y": 25.65039, + "Z": 115.983765 + }, + "TerritoryId": 153, + "InteractionType": "UseItem", + "ItemId": 2000818, + "AetheryteShortcut": "South Shroud - Quarrymill", + "Fly": true + }, + { + "Position": { + "X": 24.215942, + "Y": 25.65039, + "Z": 115.983765 + }, + "TerritoryId": 153, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "DelaySecondsAtStart": 0, + "KillEnemyDataIds": [ + 1926 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2002444, + "Position": { + "X": 24.215942, + "Y": 25.65039, + "Z": 115.983765 + }, + "TerritoryId": 153, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006749, + "Position": { + "X": -30.47229, + "Y": 13.599918, + "Z": 95.26196 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Goldsmiths' Guild" + ], + "NextQuestId": 1604 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1064_The Pursuit of Power.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1064_The Pursuit of Power.json new file mode 100644 index 00000000..faee5674 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1064_The Pursuit of Power.json @@ -0,0 +1,105 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006749, + "Position": { + "X": -30.47229, + "Y": 13.599918, + "Z": 95.26196 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Goldsmiths' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InTerritory": [ + 130, + 131 + ] + }, + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2002445, + "Position": { + "X": 3.1585693, + "Y": 20.58435, + "Z": -13.16864 + }, + "TerritoryId": 152, + "InteractionType": "UseItem", + "ItemId": 2000820, + "AetheryteShortcut": "East Shroud - Hawthorne Hut", + "Fly": true + }, + { + "Position": { + "X": 3.1585693, + "Y": 20.58435, + "Z": -13.16864 + }, + "TerritoryId": 152, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "CombatDelaySecondsAtStart": 0, + "KillEnemyDataIds": [ + 1927 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2002446, + "Position": { + "X": 3.1585693, + "Y": 20.58435, + "Z": -13.16864 + }, + "TerritoryId": 152, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006749, + "Position": { + "X": -30.47229, + "Y": 13.599918, + "Z": 95.26196 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Goldsmiths' Guild" + ], + "NextQuestId": 1065 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1065_Good Vibrations.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1065_Good Vibrations.json new file mode 100644 index 00000000..b359f9e7 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1065_Good Vibrations.json @@ -0,0 +1,248 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006749, + "Position": { + "X": -30.47229, + "Y": 13.599918, + "Z": 95.26196 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Goldsmiths' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InTerritory": [ + 130, + 131 + ] + }, + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1007875, + "Position": { + "X": -221.48468, + "Y": 26.16912, + "Z": -343.9536 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo", + "Mount": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_JOBMNK451_01065_Q1_000_000", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -258.66748, + "Y": 26.617363, + "Z": -320.76898 + }, + "TerritoryId": 146, + "InteractionType": "WalkTo", + "Mount": true + }, + { + "Position": { + "X": 38.911945, + "Y": 23.511465, + "Z": -142.86761 + }, + "TerritoryId": 146, + "InteractionType": "WalkTo", + "Fly": true, + "Land": true + }, + { + "DataId": 2002447, + "Position": { + "X": 41.428223, + "Y": 25.101074, + "Z": -149.64526 + }, + "TerritoryId": 146, + "InteractionType": "Interact" + }, + { + "Position": { + "X": 46.038277, + "Y": 50.482662, + "Z": -578.6224 + }, + "TerritoryId": 146, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "Flying": "Locked" + } + } + }, + { + "Position": { + "X": 22.885742, + "Y": 17.930914, + "Z": -619.7939 + }, + "TerritoryId": 146, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2002548, + "Position": { + "X": 17.837708, + "Y": 20.523315, + "Z": -629.1448 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "Mount": true + }, + { + "Position": { + "X": 214.89189, + "Y": 29.38419, + "Z": 59.154907 + }, + "TerritoryId": 147, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Northern Thanalan - Ceruleum Processing Plant", + "Fly": true + }, + { + "DataId": 2002448, + "Position": { + "X": 213.70251, + "Y": 30.19751, + "Z": 61.020752 + }, + "TerritoryId": 147, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1007875, + "Position": { + "X": -221.48468, + "Y": 26.16912, + "Z": -343.9536 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "Mount": true, + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1007877, + "Position": { + "X": -74.08258, + "Y": 2.6069984, + "Z": 716.39575 + }, + "TerritoryId": 135, + "AetheryteShortcut": "Lower La Noscea - Moraby Drydocks", + "Fly": true, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "CombatDelaySecondsAtStart": 0, + "KillEnemyDataIds": [ + 81, + 345, + 348 + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1007877, + "Position": { + "X": -74.08258, + "Y": 2.6069984, + "Z": 716.39575 + }, + "TerritoryId": 135, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1007875, + "Position": { + "X": -221.48468, + "Y": 26.16912, + "Z": -343.9536 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "Mount": true, + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006749, + "Position": { + "X": -30.47229, + "Y": 13.599918, + "Z": 95.26196 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Goldsmiths' Guild" + ], + "NextQuestId": 1066 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1066_Five Easy Pieces.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1066_Five Easy Pieces.json new file mode 100644 index 00000000..7a8ef395 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/1066_Five Easy Pieces.json @@ -0,0 +1,81 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006749, + "Position": { + "X": -30.47229, + "Y": 13.599918, + "Z": 95.26196 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Goldsmiths' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InTerritory": [ + 130, + 131 + ] + }, + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 107.50675, + "Y": -4.574165, + "Z": -543.2282 + }, + "TerritoryId": 156, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Mor Dhona", + "Fly": true, + "Land": true + }, + { + "Position": { + "X": 104.612144, + "Y": -4.931232, + "Z": -533.5191 + }, + "TerritoryId": 156, + "InteractionType": "SinglePlayerDuty", + "Mount": false + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1007899, + "Position": { + "X": 104.72266, + "Y": -4.9380107, + "Z": -533.53174 + }, + "TerritoryId": 156, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 2026 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/178_So You Want to Be a Pugilist.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/178_So You Want to Be a Pugilist.json new file mode 100644 index 00000000..b75d1e75 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/178_So You Want to Be a Pugilist.json @@ -0,0 +1,34 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1001286, + "Position": { + "X": -88.9754, + "Y": 2.55, + "Z": -51.163513 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSPGL001_00178_Q1_000_1", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/532_Way of the Pugilist.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/532_Way of the Pugilist.json new file mode 100644 index 00000000..130b69e0 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/532_Way of the Pugilist.json @@ -0,0 +1,50 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1001286, + "Position": { + "X": -88.9754, + "Y": 2.55, + "Z": -51.163513 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSPGL011_00532_Q1_000_1", + "Yes": true + } + ], + "NextQuestId": 553 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/533_Way of the Pugilist.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/533_Way of the Pugilist.json index cbbb57c3..8c00e6a2 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/533_Way of the Pugilist.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/533_Way of the Pugilist.json @@ -14,7 +14,13 @@ "Z": -51.163513 }, "TerritoryId": 130, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] } diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/553_My First Hora.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/553_My First Hora.json new file mode 100644 index 00000000..6709add6 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/553_My First Hora.json @@ -0,0 +1,157 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -126.59337, + "Y": 11.159969, + "Z": 276.25775 + }, + "TerritoryId": 141, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 351, + "CompletionQuestVariablesFlags": [ + { + "Low": 3 + }, + null, + null, + null, + null, + null + ], + "MinimumKillCount": 3 + } + ], + "CompletionQuestVariablesFlags": [ + { + "Low": 3 + }, + null, + null, + null, + null, + null + ], + "$": "0 0 0 0 0 0 -> 19 0 0 0 0 0", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gate of Nald (Central Thanalan)" + ] + }, + { + "Position": { + "X": -126.59337, + "Y": 11.159969, + "Z": 276.25775 + }, + "TerritoryId": 141, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 385, + "CompletionQuestVariablesFlags": [ + null, + { + "High": 3 + }, + null, + null, + null, + null + ], + "MinimumKillCount": 3 + } + ], + "CompletionQuestVariablesFlags": [ + null, + { + "High": 3 + }, + null, + null, + null, + null + ], + "$": "19 0 0 0 0 0 -> 35 48 0 0 0 0" + }, + { + "Position": { + "X": 32.007893, + "Y": 5.8527403, + "Z": 299.76016 + }, + "TerritoryId": 141, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 205, + "CompletionQuestVariablesFlags": [ + null, + { + "Low": 3 + }, + null, + null, + null, + null + ], + "MinimumKillCount": 3 + } + ], + "CompletionQuestVariablesFlags": [ + null, + { + "Low": 3 + }, + null, + null, + null, + null + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "AetheryteShortcut": "Ul'dah", + "InteractionType": "CompleteQuest", + "NextQuestId": 554 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/554_Harder than Rock.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/554_Harder than Rock.json new file mode 100644 index 00000000..05bbdddb --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/554_Harder than Rock.json @@ -0,0 +1,284 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -73.40663, + "Y": 0.60187495, + "Z": -59.04644 + }, + "TerritoryId": 130, + "InteractionType": "WalkTo", + "$": "Sometimes the pathing gets blocked coming from Hamon" + }, + { + "DataId": 2001285, + "Position": { + "X": -80.36932, + "Y": 0.6866455, + "Z": -59.55603 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 8 + ] + }, + { + "DataId": 2001282, + "Position": { + "X": -21.74414, + "Y": 9.994568, + "Z": -78.50769 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 2001283, + "Position": { + "X": 37.03357, + "Y": 7.248047, + "Z": -98.8938 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + }, + { + "DataId": 2001280, + "Position": { + "X": -162.46283, + "Y": 17.471558, + "Z": 60.196777 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ul'dah] Adventurers' Guild", + "[Ul'dah] Thaumaturges' Guild" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2001281, + "Position": { + "X": -254.74939, + "Y": 17.990356, + "Z": 67.33801 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ul'dah] Thaumaturges' Guild", + "[Ul'dah] Aetheryte Plaza" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2001541, + "Position": { + "X": 224.7196, + "Y": 52.048462, + "Z": 79.45361 + }, + "TerritoryId": 140, + "InteractionType": "Action", + "Action": "Bootshine", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gate of the Sultana (Western Thanalan)" + ], + "Fly": true + }, + { + "Position": { + "X": 224.7196, + "Y": 52.048462, + "Z": 79.45361 + }, + "TerritoryId": 140, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "KillEnemyDataIds": [ + 131 + ], + "CombatDelaySecondsAtStart": 1 + }, + { + "DataId": 2001542, + "Position": { + "X": 245.71594, + "Y": 52.475708, + "Z": 58.091064 + }, + "TerritoryId": 140, + "InteractionType": "Action", + "Action": "Bootshine", + "Fly": true + }, + { + "Position": { + "X": 245.71594, + "Y": 52.475708, + "Z": 58.091064 + }, + "TerritoryId": 140, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "KillEnemyDataIds": [ + 131 + ], + "CombatDelaySecondsAtStart": 1 + }, + { + "DataId": 2001543, + "Position": { + "X": 224.01758, + "Y": 52.231567, + "Z": 41.367188 + }, + "TerritoryId": 140, + "InteractionType": "Action", + "Action": "Bootshine", + "Fly": true + }, + { + "Position": { + "X": 224.01758, + "Y": 52.231567, + "Z": 41.367188 + }, + "TerritoryId": 140, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "KillEnemyDataIds": [ + 131 + ], + "CombatDelaySecondsAtStart": 1 + }, + { + "DataId": 2001544, + "Position": { + "X": 259.05237, + "Y": 53.421753, + "Z": 25.40625 + }, + "TerritoryId": 140, + "InteractionType": "Action", + "Action": "Bootshine", + "Fly": true + }, + { + "Position": { + "X": 258.4417, + "Y": 52.01455, + "Z": 23.240385 + }, + "TerritoryId": 140, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "KillEnemyDataIds": [ + 131 + ], + "CombatDelaySecondsAtStart": 1 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "AetheryteShortcut": "Ul'dah", + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/558_The Spirit Is Willing.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/558_The Spirit Is Willing.json new file mode 100644 index 00000000..8924e6fd --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/558_The Spirit Is Willing.json @@ -0,0 +1,181 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 265.54178, + "Y": -19.718353, + "Z": -128.44438 + }, + "TerritoryId": 141, + "AetheryteShortcut": "Central Thanalan - Black Brush Station", + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "CombatDelaySecondsAtStart": 0, + "ComplexCombatData": [ + { + "DataId": 26, + "RewardItemId": 2000408, + "RewardItemCount": 5 + } + ], + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 359.2259, + "Y": -1.9503738, + "Z": -187.50148 + }, + "TerritoryId": 141, + "InteractionType": "WalkTo" + }, + { + "DataId": 1003822, + "Position": { + "X": -27.390015, + "Y": -2.056931, + "Z": -146.92914 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Central Thanalan - Black Brush Station" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1001578, + "Position": { + "X": -35.446716, + "Y": -2.057618, + "Z": -154.95538 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "Mount": true + }, + { + "DataId": 1001445, + "Position": { + "X": -13.046509, + "Y": -2.0905762, + "Z": -184.40533 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 1004148, + "Position": { + "X": 5.722107, + "Y": -1.985179, + "Z": -172.7779 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1003822, + "Position": { + "X": -27.390015, + "Y": -2.056931, + "Z": -146.92914 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 2001349, + "Position": { + "X": -241.41296, + "Y": 8.0720215, + "Z": -32.24237 + }, + "TerritoryId": 141, + "InteractionType": "SinglePlayerDuty", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1004149, + "Position": { + "X": -242.84735, + "Y": 7.405224, + "Z": -29.312622 + }, + "StopDistance": 6, + "TerritoryId": 141, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1003827, + "Position": { + "X": -65.65961, + "Y": 0.9481947, + "Z": -51.98755 + }, + "TerritoryId": 130, + "AetheryteShortcut": "Ul'dah", + "InteractionType": "CompleteQuest", + "NextQuestId": 562 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/562_Keeping the Spirit Alive.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/562_Keeping the Spirit Alive.json new file mode 100644 index 00000000..80168a29 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/562_Keeping the Spirit Alive.json @@ -0,0 +1,186 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1003827, + "Position": { + "X": -65.65961, + "Y": 0.9481947, + "Z": -51.98755 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2001391, + "Position": { + "X": -215.99152, + "Y": -29.495728, + "Z": 203.78418 + }, + "TerritoryId": 145, + "InteractionType": "Action", + "Action": "Bootshine", + "Fly": true, + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone" + }, + { + "Position": { + "X": -215.99152, + "Y": -29.495728, + "Z": 203.78418 + }, + "TerritoryId": 145, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "CombatDelaySecondsAtStart": 1, + "ComplexCombatData": [ + { + "DataId": 139, + "MinimumKillCount": 1 + }, + { + "DataId": 136, + "MinimumKillCount": 2 + } + ] + }, + { + "DataId": 2001389, + "Position": { + "X": -242.4201, + "Y": -26.138794, + "Z": 229.17517 + }, + "TerritoryId": 145, + "InteractionType": "Action", + "Action": "Bootshine", + "Mount": true + }, + { + "Position": { + "X": -242.4201, + "Y": -26.138794, + "Z": 229.17517 + }, + "TerritoryId": 145, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "CombatDelaySecondsAtStart": 1, + "ComplexCombatData": [ + { + "DataId": 57, + "MinimumKillCount": 2 + } + ] + }, + { + "DataId": 2001390, + "Position": { + "X": -228.8396, + "Y": -27.8172, + "Z": 250.14111 + }, + "TerritoryId": 145, + "InteractionType": "Action", + "Action": "Bootshine", + "Mount": true + }, + { + "Position": { + "X": -228.8396, + "Y": -27.8172, + "Z": 250.14111 + }, + "TerritoryId": 145, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "CombatDelaySecondsAtStart": 1, + "ComplexCombatData": [ + { + "DataId": 57, + "MinimumKillCount": 2 + } + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "AetheryteShortcut": "Ul'dah" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "InteractionType": "SinglePlayerDuty" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "InteractionType": "CompleteQuest", + "NextQuestId": 566 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/566_Star-crossed Rivals.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/566_Star-crossed Rivals.json new file mode 100644 index 00000000..182c255c --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/566_Star-crossed Rivals.json @@ -0,0 +1,196 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1003827, + "Position": { + "X": -65.65961, + "Y": 0.9481947, + "Z": -51.98755 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1003829, + "Position": { + "X": -147.32587, + "Y": 25.913446, + "Z": -359.76202 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2001525, + "Position": { + "X": -203.81476, + "Y": 27.267822, + "Z": -351.76624 + }, + "TerritoryId": 146, + "InteractionType": "UseItem", + "ItemId": 2000409, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + }, + { + "Position": { + "X": -258.89648, + "Y": 26.681297, + "Z": -322.03738 + }, + "TerritoryId": 146, + "InteractionType": "WalkTo", + "Mount": true + }, + { + "Position": { + "X": -102.12759, + "Y": 14.866777, + "Z": -187.7578 + }, + "TerritoryId": 146, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2001523, + "Position": { + "X": -105.57721, + "Y": 14.999573, + "Z": -185.32086 + }, + "TerritoryId": 146, + "InteractionType": "UseItem", + "ItemId": 2000409, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2001524, + "Position": { + "X": 197.4364, + "Y": 15.548889, + "Z": -450.58368 + }, + "TerritoryId": 146, + "InteractionType": "UseItem", + "ItemId": 2000409, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ], + "Fly": true + }, + { + "DataId": 2001522, + "Position": { + "X": 22.171326, + "Y": 17.868286, + "Z": -600.24414 + }, + "TerritoryId": 146, + "InteractionType": "UseItem", + "ItemId": 2000409, + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1003829, + "Position": { + "X": -147.32587, + "Y": 25.913446, + "Z": -359.76202 + }, + "TerritoryId": 146, + "InteractionType": "SinglePlayerDuty", + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ul'dah", + "NextQuestId": 567 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/567_Return of the Holyfist.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/567_Return of the Holyfist.json new file mode 100644 index 00000000..59a1d906 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/567_Return of the Holyfist.json @@ -0,0 +1,115 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1003830, + "Position": { + "X": -301.5335, + "Y": 5.0000005, + "Z": 471.3053 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "AetheryteShortcut": "Southern Thanalan - Forgotten Springs", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -262.6409, + "Y": 14.190942, + "Z": 594.23486 + }, + "TerritoryId": 146, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "CombatDelaySecondsAtStart": 0, + "ComplexCombatData": [ + { + "DataId": 357, + "MinimumKillCount": 5 + } + ], + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1003830, + "Position": { + "X": -301.5335, + "Y": 5.0000005, + "Z": 471.3053 + }, + "TerritoryId": 146, + "InteractionType": "SinglePlayerDuty", + "AetheryteShortcut": "Southern Thanalan - Forgotten Springs", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1003890, + "Position": { + "X": -21.805176, + "Y": 3.9999993, + "Z": -145.18964 + }, + "TerritoryId": 130, + "InteractionType": "SinglePlayerDuty", + "AetheryteShortcut": "Ul'dah" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/698_Burning Up the Quarter Malm.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/698_Burning Up the Quarter Malm.json new file mode 100644 index 00000000..236a6c7a --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/MNK/698_Burning Up the Quarter Malm.json @@ -0,0 +1,150 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2001798, + "Position": { + "X": -107.9017, + "Y": 4.989685, + "Z": -105.4603 + }, + "TerritoryId": 130, + "InteractionType": "Action", + "Action": "Bootshine" + }, + { + "DataId": 2001799, + "Position": { + "X": -105.6365, + "Y": 4.9655, + "Z": -107.5618 + }, + "TerritoryId": 130, + "InteractionType": "Action", + "Action": "Bootshine" + }, + { + "DataId": 2001800, + "Position": { + "X": -77.62268, + "Y": 5.0201416, + "Z": -128.893 + }, + "TerritoryId": 130, + "InteractionType": "Action", + "Action": "Bootshine" + }, + { + "DataId": 2001801, + "Position": { + "X": -74.60144, + "Y": 4.8981323, + "Z": -130.69354 + }, + "TerritoryId": 130, + "InteractionType": "Action", + "Action": "Bootshine" + }, + { + "DataId": 2001802, + "Position": { + "X": -71.42755, + "Y": 5.0201416, + "Z": -132.34149 + }, + "TerritoryId": 130, + "InteractionType": "Action", + "Action": "Bootshine" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": -210.32118, + "Y": 21.582167, + "Z": -94.337494 + }, + "TerritoryId": 141, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "KillEnemyDataIds": [ + 771 + ], + "Fly": true, + "AetheryteShortcut": "Central Thanalan - Black Brush Station", + "CombatDelaySecondsAtStart": 0, + "$": "Will stop once 3 Qiqirn Shellsweppers get hit by Snap Punch since it will move on to the next sequence" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": -118.55462, + "Y": 8.216448, + "Z": -82.81951 + }, + "TerritoryId": 141, + "InteractionType": "WalkTo" + }, + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "AetheryteShortcut": "Ul'dah", + "InteractionType": "CompleteQuest", + "NextQuestId": 558 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/NIN/101_So You Want to Be a Rogue.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/NIN/101_So You Want to Be a Rogue.json new file mode 100644 index 00000000..e73ae1cd --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/NIN/101_So You Want to Be a Rogue.json @@ -0,0 +1,39 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1009944, + "Position": { + "X": -152.66656, + "Y": 2.8562405, + "Z": 243.18298 + }, + "TerritoryId": 129, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Fishermens' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSROG001_00101_Q1_000_040", + "Yes": true + } + ], + "NextQuestId": 102 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/NIN/102_My First Dagger.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/NIN/102_My First Dagger.json new file mode 100644 index 00000000..431a9e90 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/NIN/102_My First Dagger.json @@ -0,0 +1,61 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1009944, + "Position": { + "X": -152.66656, + "Y": 2.8562405, + "Z": 243.18298 + }, + "TerritoryId": 129, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1009944, + "Position": { + "X": -152.66656, + "Y": 2.8562405, + "Z": 243.18298 + }, + "TerritoryId": 129, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSROG011_00102_Q9_000_901", + "Yes": true + } + ] + }, + { + "DataId": 1009943, + "Position": { + "X": -153.36847, + "Y": -129.4397, + "Z": 265.88843 + }, + "StopDistance": 7, + "TerritoryId": 129, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSROG011_00102_Q1_000_030", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/1055_Paladin's Pledge.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/1055_Paladin's Pledge.json new file mode 100644 index 00000000..d7d54815 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/1055_Paladin's Pledge.json @@ -0,0 +1,127 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1002277, + "Position": { + "X": -97.550964, + "Y": 7.05, + "Z": 23.605652 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1006747, + "Position": { + "X": -20.828613, + "Y": 29.999964, + "Z": -2.4262085 + }, + "TerritoryId": 131, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ul'dah] Gladiators' Guild", + "[Ul'dah] The Chamber of Rule" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2002344, + "Position": { + "X": -97.39838, + "Y": 14.846985, + "Z": -188.2201 + }, + "TerritoryId": 146, + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo", + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 18, + 19 + ], + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2002345, + "Position": { + "X": -97.39838, + "Y": 16.433899, + "Z": -188.2201 + }, + "TerritoryId": 146, + "InteractionType": "UseItem", + "ItemId": 2000821 + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1006747, + "Position": { + "X": -20.828613, + "Y": 29.999964, + "Z": -2.4262085 + }, + "TerritoryId": 131, + "InteractionType": "Interact", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] The Chamber of Rule" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006747, + "Position": { + "X": -20.828613, + "Y": 29.999964, + "Z": -2.4262085 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "NextQuestId": 1056 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/177_So You Want to Be a Gladiator.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/177_So You Want to Be a Gladiator.json new file mode 100644 index 00000000..c0c38a44 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/177_So You Want to Be a Gladiator.json @@ -0,0 +1,41 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1002277, + "Position": { + "X": -97.550964, + "Y": 7.05, + "Z": 23.605652 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSGLA001_00177_Q1_000_1", + "Yes": true + } + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + } + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/253_Way of the Gladiator.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/253_Way of the Gladiator.json index 09113bd9..5d6ef84a 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/253_Way of the Gladiator.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/253_Way of the Gladiator.json @@ -84,8 +84,7 @@ "MinimumKillCount": 3, "CompletionQuestVariablesFlags": [ { - "Low": 3, - "Mode": "Exact" + "Low": 3 }, null, null, @@ -100,8 +99,7 @@ "CompletionQuestVariablesFlags": [ null, { - "High": 3, - "Mode": "Exact" + "High": 3 }, null, null, @@ -112,12 +110,10 @@ ], "CompletionQuestVariablesFlags": [ { - "Low": 3, - "Mode": "Exact" + "Low": 3 }, { - "High": 3, - "Mode": "Exact" + "High": 3 }, null, null, @@ -141,8 +137,7 @@ "CompletionQuestVariablesFlags": [ null, { - "Low": 3, - "Mode": "Exact" + "Low": 3 }, null, null, @@ -154,8 +149,7 @@ "CompletionQuestVariablesFlags": [ null, { - "Low": 3, - "Mode": "Exact" + "Low": 3 }, null, null, diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/256_Kicking the Hornet's Nest.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/256_Kicking the Hornet's Nest.json index 88320c09..e12a5e43 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/256_Kicking the Hornet's Nest.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/256_Kicking the Hornet's Nest.json @@ -13,7 +13,20 @@ "Z": 39.81079 }, "TerritoryId": 131, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + } } ] }, diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/261_Ul'dah's Most Wanted.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/261_Ul'dah's Most Wanted.json new file mode 100644 index 00000000..2715bf99 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/261_Ul'dah's Most Wanted.json @@ -0,0 +1,163 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1002296, + "Position": { + "X": -139.42175, + "Y": 4.019726, + "Z": 205.0354 + }, + "TerritoryId": 141, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "AethernetShortcut": [ + "[Ul'dah] Gladiators' Guild", + "[Ul'dah] Gate of Nald (Central Thanalan)" + ], + "KillEnemyDataIds": [ + 1245 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1002296, + "Position": { + "X": -139.42175, + "Y": 4.019726, + "Z": 205.0354 + }, + "TerritoryId": 141, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "Interact", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + } + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2001426, + "Position": { + "X": 27.206787, + "Y": 12.985352, + "Z": 51.83484 + }, + "TerritoryId": 141, + "InteractionType": "SinglePlayerDuty", + "AethernetShortcut": [ + "[Ul'dah] Gladiators' Guild", + "[Ul'dah] Gate of Nald (Central Thanalan)" + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1003945, + "Position": { + "X": 24.917969, + "Y": 13, + "Z": 50.156372 + }, + "StopDistance": 5, + "TerritoryId": 141, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ul'dah", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CLSGLA100_00261_Q1_000_160", + "Answer": "TEXT_CLSGLA100_00261_A1_000_161" + } + ], + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "NextQuestId": 262 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/262_That Old Familiar Feeling.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/262_That Old Familiar Feeling.json new file mode 100644 index 00000000..f3ed11ad --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/262_That Old Familiar Feeling.json @@ -0,0 +1,136 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1004224, + "Position": { + "X": -220.93542, + "Y": -38.407475, + "Z": 63.91992 + }, + "TerritoryId": 145, + "InteractionType": "Combat", + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 1244 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1004224, + "Position": { + "X": -220.93542, + "Y": -38.407475, + "Z": 63.91992 + }, + "TerritoryId": 145, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "Interact", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + } + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1004091, + "Position": { + "X": 24.12439, + "Y": 7.1999984, + "Z": -102.76953 + }, + "TerritoryId": 130, + "InteractionType": "SinglePlayerDuty", + "AethernetShortcut": [ + "[Ul'dah] Gladiators' Guild", + "[Ul'dah] Adventurers' Guild" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Ul'dah] Adventurers' Guild", + "[Ul'dah] Gladiators' Guild" + ], + "NextQuestId": 263 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/263_The Face of Thal.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/263_The Face of Thal.json new file mode 100644 index 00000000..9afca9f9 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/263_The Face of Thal.json @@ -0,0 +1,207 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1004140, + "Position": { + "X": -72.34308, + "Y": -12.372956, + "Z": -69.13867 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "AetheryteShortcut": "Central Thanalan - Black Brush Station" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1001462, + "Position": { + "X": -93.33948, + "Y": -11.367981, + "Z": -41.397766 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1001438, + "Position": { + "X": -30.838562, + "Y": -1.0332576, + "Z": -145.67792 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2001434, + "Position": { + "X": -115.77026, + "Y": 0.015197754, + "Z": -149.24854 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1004140, + "Position": { + "X": -72.34308, + "Y": -12.372956, + "Z": -69.13867 + }, + "TerritoryId": 141, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1001285, + "Position": { + "X": -68.77246, + "Y": 4.0411124, + "Z": -126.51257 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "AetheryteShortcut": "Ul'dah" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CLSGLA200_00263_Q1_000_124", + "Answer": "TEXT_CLSGLA200_00263_A1_000_125" + } + ] + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1004092, + "Position": { + "X": -241.16882, + "Y": 32.47634, + "Z": 398.9165 + }, + "TerritoryId": 140, + "InteractionType": "SinglePlayerDuty", + "AethernetShortcut": [ + "[Ul'dah] Gladiators' Guild", + "[Ul'dah] Gate of the Sultana (Western Thanalan)" + ], + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "NextQuestId": 264 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/264_On Holy Ground.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/264_On Holy Ground.json new file mode 100644 index 00000000..200951f4 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/264_On Holy Ground.json @@ -0,0 +1,152 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1004225, + "Position": { + "X": 62.974, + "Y": 54.60642, + "Z": 284.90112 + }, + "TerritoryId": 140, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 1243 + ], + "AethernetShortcut": [ + "[Ul'dah] Gladiators' Guild", + "[Ul'dah] Gate of the Sultana (Western Thanalan)" + ], + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1004225, + "Position": { + "X": 62.974, + "Y": 54.60642, + "Z": 284.90112 + }, + "TerritoryId": 140, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "Interact", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1002277, + "Position": { + "X": -97.550964, + "Y": 7.05, + "Z": 23.605652 + }, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1004141, + "Position": { + "X": -520.5005, + "Y": -21.460285, + "Z": 123.46069 + }, + "TerritoryId": 145, + "InteractionType": "SinglePlayerDuty", + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CLSGLA250_00264_Q1_000_170", + "Answer": "TEXT_CLSGLA250_00264_A1_000_180" + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "NextQuestId": 265 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/265_The Rematch.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/265_The Rematch.json new file mode 100644 index 00000000..2dd6e1d0 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/265_The Rematch.json @@ -0,0 +1,210 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1001285, + "Position": { + "X": -68.77246, + "Y": 4.0411124, + "Z": -126.51257 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ul'dah] Gladiators' Guild", + "[Ul'dah] Aetheryte Plaza" + ], + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CLSGLA300_00265_Q1_000_40", + "Answer": "TEXT_CLSGLA300_00265_A1_000_50" + } + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 235.23369, + "Y": 2.747214, + "Z": 673.64215 + }, + "TerritoryId": 141, + "InteractionType": "WalkTo", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gate of Thal (Central Thanalan)" + ], + "SkipConditions": { + "StepIf": { + "AetheryteUnlocked": "Southern Thanalan - Little Ala Mhigo" + } + } + }, + { + "TerritoryId": 146, + "Aetheryte": "Southern Thanalan - Little Ala Mhigo", + "InteractionType": "AttuneAetheryte", + "SkipConditions": { + "StepIf": { + "AetheryteUnlocked": "Southern Thanalan - Little Ala Mhigo" + } + } + }, + { + "Position": { + "X": 140.30618, + "Y": 4.2185926, + "Z": -585.2695 + }, + "TerritoryId": 146, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo", + "SkipConditions": { + "AetheryteShortcutIf": { + "AetheryteLocked": "Southern Thanalan - Little Ala Mhigo" + } + } + }, + { + "DataId": 2001455, + "Position": { + "X": 28.091797, + "Y": 6.9733276, + "Z": -611.2917 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2001435, + "Position": { + "X": 101.823364, + "Y": 7.248047, + "Z": -534.56934 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 164.75665, + "Y": 3.3963587, + "Z": -585.49005 + }, + "TerritoryId": 146, + "InteractionType": "WalkTo" + }, + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "Interact", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1004142, + "Position": { + "X": -19.97406, + "Y": -30.999985, + "Z": -33.951355 + }, + "TerritoryId": 145, + "InteractionType": "SinglePlayerDuty", + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "NextQuestId": 1055 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/285_Way of the Gladiator.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/285_Way of the Gladiator.json new file mode 100644 index 00000000..126115bb --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/285_Way of the Gladiator.json @@ -0,0 +1,44 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1002277, + "Position": { + "X": -97.550964, + "Y": 7.05, + "Z": 23.605652 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSGLA011_00285_Q2_000_1", + "Yes": true + } + ], + "NextQuestId": 286 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/286_My First Gladius.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/286_My First Gladius.json new file mode 100644 index 00000000..7a43259b --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/286_My First Gladius.json @@ -0,0 +1,154 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 45.13088, + "Y": 3.889354, + "Z": -166.51999 + }, + "TerritoryId": 130, + "InteractionType": "WalkTo", + "AethernetShortcut": [ + "[Ul'dah] Gladiators' Guild", + "[Ul'dah] Adventurers' Guild" + ], + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 141 + ] + } + } + }, + { + "Position": { + "X": -116.10664, + "Y": 10.801613, + "Z": 276.979 + }, + "TerritoryId": 141, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 351, + "MinimumKillCount": 3, + "CompletionQuestVariablesFlags": [ + { + "Low": 3 + }, + null, + null, + null, + null, + null + ] + }, + { + "DataId": 141, + "MinimumKillCount": 3, + "CompletionQuestVariablesFlags": [ + null, + { + "High": 3 + }, + null, + null, + null, + null + ] + } + ], + "CompletionQuestVariablesFlags": [ + { + "Low": 3 + }, + { + "High": 3 + }, + null, + null, + null, + null + ] + }, + { + "Position": { + "X": 39.635372, + "Y": 3.2401803, + "Z": 273.41232 + }, + "TerritoryId": 141, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 205, + "MinimumKillCount": 3, + "CompletionQuestVariablesFlags": [ + null, + { + "Low": 3 + }, + null, + null, + null, + null + ] + } + ], + "CompletionQuestVariablesFlags": [ + null, + { + "Low": 3 + }, + null, + null, + null, + null + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/288_Ul'dah's Most Wanted.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/288_Ul'dah's Most Wanted.json new file mode 100644 index 00000000..a566207a --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/PLD/288_Ul'dah's Most Wanted.json @@ -0,0 +1,163 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1002296, + "Position": { + "X": -139.42175, + "Y": 4.019726, + "Z": 205.0354 + }, + "TerritoryId": 141, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "AethernetShortcut": [ + "[Ul'dah] Gladiators' Guild", + "[Ul'dah] Gate of Nald (Central Thanalan)" + ], + "KillEnemyDataIds": [ + 1245 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1002296, + "Position": { + "X": -139.42175, + "Y": 4.019726, + "Z": 205.0354 + }, + "TerritoryId": 141, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "Interact", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + } + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2001756, + "Position": { + "X": 27.206787, + "Y": 12.985352, + "Z": 51.83484 + }, + "TerritoryId": 141, + "InteractionType": "SinglePlayerDuty", + "AethernetShortcut": [ + "[Ul'dah] Gladiators' Guild", + "[Ul'dah] Gate of Nald (Central Thanalan)" + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1003945, + "Position": { + "X": 24.917969, + "Y": 13, + "Z": 50.156372 + }, + "StopDistance": 5, + "TerritoryId": 141, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ul'dah", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CLSGLA101_00288_Q1_000_160", + "Answer": "TEXT_CLSGLA101_00288_A1_000_161" + } + ], + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "NextQuestId": 262 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1097_Forgotten but Not Gone.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1097_Forgotten but Not Gone.json index 615cf8be..5d4a5b35 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1097_Forgotten but Not Gone.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1097_Forgotten but Not Gone.json @@ -12,7 +12,13 @@ "Z": 4.017052 }, "TerritoryId": 129, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "AetheryteShortcut": "Limsa Lominsa", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } }, { "DataId": 1000895, diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1098_The Last Remnants.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1098_The Last Remnants.json index 66e6af53..19cbfbe7 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1098_The Last Remnants.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1098_The Last Remnants.json @@ -8,7 +8,20 @@ { "TerritoryId": 128, "InteractionType": "EquipItem", - "ItemId": 4550 + "ItemId": 4550, + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Marauders' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 128 + ] + } + } }, { "DataId": 1006757, diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1099_The Consequences of Anger.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1099_The Consequences of Anger.json index 2fbe65db..18257f45 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1099_The Consequences of Anger.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1099_The Consequences of Anger.json @@ -13,7 +13,20 @@ "Z": -250.56848 }, "TerritoryId": 128, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Marauders' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 128 + ] + } + } } ] }, diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1100_In the Image of the Ancients.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1100_In the Image of the Ancients.json index 8e87dd8b..aa5a054f 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1100_In the Image of the Ancients.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1100_In the Image of the Ancients.json @@ -13,7 +13,20 @@ "Z": -250.56848 }, "TerritoryId": 128, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Marauders' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 128 + ] + } + } } ] }, diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1101_For Your Fellow Man.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1101_For Your Fellow Man.json index a2b64690..270a798d 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1101_For Your Fellow Man.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1101_For Your Fellow Man.json @@ -13,7 +13,20 @@ "Z": -250.56848 }, "TerritoryId": 128, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Marauders' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 128 + ] + } + } } ] }, diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1102_The Beast Within.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1102_The Beast Within.json index 8169dfbd..06d12fb3 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1102_The Beast Within.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/SCH/1102_The Beast Within.json @@ -13,7 +13,20 @@ "Z": -250.56848 }, "TerritoryId": 128, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Marauders' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 128 + ] + } + } } ] }, diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/SMN/451_So You Want to Be an Arcanist.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/SMN/451_So You Want to Be an Arcanist.json new file mode 100644 index 00000000..4c4c38fc --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/SMN/451_So You Want to Be an Arcanist.json @@ -0,0 +1,42 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000895, + "Position": { + "X": -335.74432, + "Y": 12.899764, + "Z": 1.3884888 + }, + "TerritoryId": 129, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Arcanists' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 129 + ] + } + }, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSACN001_00451_Q1_000_000", + "Yes": true + } + ], + "NextQuestId": 452 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/SMN/452_Way of the Arcanist.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/SMN/452_Way of the Arcanist.json new file mode 100644 index 00000000..4faf9f21 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/SMN/452_Way of the Arcanist.json @@ -0,0 +1,44 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000895, + "Position": { + "X": -335.74432, + "Y": 12.899764, + "Z": 1.3884888 + }, + "TerritoryId": 129, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000909, + "Position": { + "X": -326.37524, + "Y": 12.899658, + "Z": 9.994568 + }, + "TerritoryId": 129, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSACN011_00452_Q1_000_000", + "Yes": true + } + ], + "NextQuestId": 454 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/179_So You Want to Be a Marauder.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/179_So You Want to Be a Marauder.json new file mode 100644 index 00000000..b9522c79 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/179_So You Want to Be a Marauder.json @@ -0,0 +1,41 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000926, + "Position": { + "X": -10.055725, + "Y": 44.999794, + "Z": -245.80762 + }, + "TerritoryId": 128, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Marauders' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 128 + ] + } + }, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSEXC001_00179_Q1_000_1", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/310_Way of the Marauder.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/310_Way of the Marauder.json new file mode 100644 index 00000000..fd759a6a --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/310_Way of the Marauder.json @@ -0,0 +1,44 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000926, + "Position": { + "X": -10.055725, + "Y": 44.999794, + "Z": -245.80762 + }, + "TerritoryId": 128, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000927, + "Position": { + "X": -1.2055054, + "Y": 44.999886, + "Z": -255.8786 + }, + "TerritoryId": 128, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSEXC011_00310_Q2_000_1", + "Yes": true + } + ], + "NextQuestId": 312 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/311_Way of the Marauder.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/311_Way of the Marauder.json index 48c7d050..450bc856 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/311_Way of the Marauder.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/311_Way of the Marauder.json @@ -185,7 +185,8 @@ "AethernetShortcut": [ "[Limsa Lominsa] Aetheryte Plaza", "[Limsa Lominsa] Marauders' Guild" - ] + ], + "NextQuestId": 313 } ] } diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/312_My First Axe.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/312_My First Axe.json index 4969ace6..45f30e16 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/312_My First Axe.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/312_My First Axe.json @@ -163,7 +163,8 @@ "AethernetShortcut": [ "[Limsa Lominsa] Aetheryte Plaza", "[Limsa Lominsa] Marauders' Guild" - ] + ], + "NextQuestId": 313 } ] } diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/313_Axe in the Stone.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/313_Axe in the Stone.json index a1adfdeb..c4c41262 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/313_Axe in the Stone.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/313_Axe in the Stone.json @@ -314,7 +314,8 @@ "AethernetShortcut": [ "[Limsa Lominsa] Aetheryte Plaza", "[Limsa Lominsa] Marauders' Guild" - ] + ], + "NextQuestId": 315 } ] } diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/314_Wake of Destruction.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/314_Wake of Destruction.json index dbb6dcd4..a95f37e9 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/314_Wake of Destruction.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/314_Wake of Destruction.json @@ -132,7 +132,8 @@ "AethernetShortcut": [ "[Limsa Lominsa] Aetheryte Plaza", "[Limsa Lominsa] Marauders' Guild" - ] + ], + "NextQuestId": 316 } ] } diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/315_Wake of Destruction.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/315_Wake of Destruction.json index c6c66f93..e5ef67e1 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/315_Wake of Destruction.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/315_Wake of Destruction.json @@ -132,7 +132,8 @@ "AethernetShortcut": [ "[Limsa Lominsa] Aetheryte Plaza", "[Limsa Lominsa] Marauders' Guild" - ] + ], + "NextQuestId": 316 } ] } diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/316_Brutal Strength.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/316_Brutal Strength.json index b12278d8..ead596f4 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/316_Brutal Strength.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WAR/316_Brutal Strength.json @@ -209,7 +209,8 @@ "AethernetShortcut": [ "[Limsa Lominsa] Aetheryte Plaza", "[Limsa Lominsa] Marauders' Guild" - ] + ], + "NextQuestId": 317 } ] } diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1080_Only You Can Prevent Forest Ire.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1080_Only You Can Prevent Forest Ire.json index 729b4b3f..7ebd65e2 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1080_Only You Can Prevent Forest Ire.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1080_Only You Can Prevent Forest Ire.json @@ -35,7 +35,8 @@ "Y": 8.712891, "Z": 281.69678 }, - "MaximumDistance": 3 + "MaximumDistance": 3, + "TerritoryId": 153 } } } @@ -150,7 +151,8 @@ "Y": 8.712891, "Z": 281.69678 }, - "MaximumDistance": 3 + "MaximumDistance": 3, + "TerritoryId": 153 } } } diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1081_O Brother, Where Art Thou.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1081_O Brother, Where Art Thou.json index 48d669d2..8f55a98e 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1081_O Brother, Where Art Thou.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1081_O Brother, Where Art Thou.json @@ -35,7 +35,8 @@ "Y": 8.712891, "Z": 281.69678 }, - "MaximumDistance": 3 + "MaximumDistance": 3, + "TerritoryId": 153 } } } @@ -157,7 +158,8 @@ "Y": 8.712891, "Z": 281.69678 }, - "MaximumDistance": 3 + "MaximumDistance": 3, + "TerritoryId": 153 } } } diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1082_Following in His Footsteps.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1082_Following in His Footsteps.json index 4be0c9df..5b4cd824 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1082_Following in His Footsteps.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1082_Following in His Footsteps.json @@ -35,7 +35,8 @@ "Y": 8.712891, "Z": 281.69678 }, - "MaximumDistance": 3 + "MaximumDistance": 3, + "TerritoryId": 153 } } } @@ -202,7 +203,8 @@ "Y": 8.712891, "Z": 281.69678 }, - "MaximumDistance": 3 + "MaximumDistance": 3, + "TerritoryId": 153 } } } @@ -293,7 +295,8 @@ "Y": 8.712891, "Z": 281.69678 }, - "MaximumDistance": 3 + "MaximumDistance": 3, + "TerritoryId": 153 } } } @@ -409,7 +412,8 @@ "Y": 8.712891, "Z": 281.69678 }, - "MaximumDistance": 3 + "MaximumDistance": 3, + "TerritoryId": 153 } } } diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1083_Yearn for the Urn.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1083_Yearn for the Urn.json index c71f25c4..af438098 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1083_Yearn for the Urn.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1083_Yearn for the Urn.json @@ -35,7 +35,8 @@ "Y": 8.712891, "Z": 281.69678 }, - "MaximumDistance": 3 + "MaximumDistance": 3, + "TerritoryId": 153 } } } @@ -194,7 +195,8 @@ "Y": 8.712891, "Z": 281.69678 }, - "MaximumDistance": 3 + "MaximumDistance": 3, + "TerritoryId": 153 } } } diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1084_Heart of the Forest.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1084_Heart of the Forest.json index 727f1685..77a1c616 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1084_Heart of the Forest.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/1084_Heart of the Forest.json @@ -35,7 +35,8 @@ "Y": 8.712891, "Z": 281.69678 }, - "MaximumDistance": 3 + "MaximumDistance": 3, + "TerritoryId": 153 } } } @@ -117,7 +118,8 @@ "Y": 8.712891, "Z": 281.69678 }, - "MaximumDistance": 3 + "MaximumDistance": 3, + "TerritoryId": 153 } } } diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/147_Trial by Wind.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/147_Trial by Wind.json index 6ecee3c5..0dfda145 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/147_Trial by Wind.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/147_Trial by Wind.json @@ -1,6 +1,9 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": ["Cacahuetes", "liza"], + "Author": [ + "Cacahuetes", + "liza" + ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/48_Trial by Earth.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/48_Trial by Earth.json index 1cc917cf..22f33570 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/48_Trial by Earth.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/48_Trial by Earth.json @@ -1,139 +1,134 @@ -{ - "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "Cacahuetes", - "QuestSequence": [ - { - "Sequence": 0, - "Steps": [ - { - "DataId": 1000692, - "Position": { - "X": -258.8083, - "Y": -5.7735243, - "Z": -27.267883 - }, - "TerritoryId": 133, - "AetheryteShortcut": "Gridania", - "AethernetShortcut": [ - "[Gridania] Aetheryte Plaza", - "[Gridania] Conjurers' Guild" - ], - "InteractionType": "AcceptQuest", - "SkipConditions": { - "AetheryteShortcutIf": { - "InSameTerritory": true, - "InTerritory": [ - 133 - ] - } - } - } - ] - }, - { - "Sequence": 1, - "Steps": [ - { - "Position": { - "X": 220.82336, - "Y": -28.335487, - "Z": 336.9016 - }, - "AethernetShortcut": [ - "[Gridania] Conjurers' Guild", - "[Gridania] Yellow Serpent Gate (North Shroud)" - ], - "TerritoryId": 154, - "InteractionType": "WalkTo", - "Fly": true, - "SkipConditions": { - "StepIf": { - "Flying": "Locked" - } - } - }, - { - "DataId": 1000764, - "Position": { - "X": 218.89062, - "Y": -28.252495, - "Z": 338.39917 - }, - "TerritoryId": 154, - "InteractionType": "Interact" - } - ] - }, - { - "Sequence": 2, - "Steps": [ - { - "DataId": 2000883, - "Position": { - "X": 325.1848, - "Y": -5.217115, - "Z": 390.488 - }, - "TerritoryId": 154, - "InteractionType": "Combat", - "EnemySpawnType": "AfterInteraction", - "KillEnemyDataIds": [ - 294 - ], - "Fly": true - } - ] - }, - { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 220.82336, - "Y": -28.335487, - "Z": 336.9016 - }, - "TerritoryId": 154, - "InteractionType": "WalkTo", - "Fly": true, - "SkipConditions": { - "StepIf": { - "Flying": "Locked" - } - } - }, - { - "DataId": 1000764, - "Position": { - "X": 218.89062, - "Y": -28.252495, - "Z": 338.39917 - }, - "TerritoryId": 154, - "InteractionType": "Interact" - } - ] - }, - { - "Sequence": 255, - "Steps": [ - { - "DataId": 1000692, - "Position": { - "X": -258.8083, - "Y": -5.7735243, - "Z": -27.267883 - }, - "TerritoryId": 133, - "InteractionType": "CompleteQuest", - "AetheryteShortcut": "Gridania", - "AethernetShortcut": [ - "[Gridania] Aetheryte Plaza", - "[Gridania] Conjurers' Guild" - ], - "NextQuestId": 91 - } - ] - } - ] -} +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000692, + "Position": { + "X": -258.8083, + "Y": -5.7735243, + "Z": -27.267883 + }, + "TerritoryId": 133, + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Conjurers' Guild" + ], + "InteractionType": "AcceptQuest", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 133 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 220.82336, + "Y": -28.335487, + "Z": 336.9016 + }, + "AethernetShortcut": [ + "[Gridania] Conjurers' Guild", + "[Gridania] Yellow Serpent Gate (North Shroud)" + ], + "TerritoryId": 154, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1000764, + "Position": { + "X": 218.89062, + "Y": -28.252495, + "Z": 338.39917 + }, + "TerritoryId": 154, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2000883, + "Position": { + "X": 325.1848, + "Y": -5.217115, + "Z": 390.488 + }, + "TerritoryId": 154, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 294 + ], + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 220.82336, + "Y": -28.335487, + "Z": 336.9016 + }, + "TerritoryId": 154, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "Flying": "Locked" + } + } + }, + { + "DataId": 1000764, + "Position": { + "X": 218.89062, + "Y": -28.252495, + "Z": 338.39917 + }, + "TerritoryId": 154, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000692, + "Position": { + "X": -258.8083, + "Y": -5.7735243, + "Z": -27.267883 + }, + "TerritoryId": 133, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Conjurers' Guild" + ], + "NextQuestId": 91 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/91_Trial by Wind.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/91_Trial by Wind.json index 4415c7f5..a176c3b2 100644 --- a/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/91_Trial by Wind.json +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WHM/91_Trial by Wind.json @@ -1,140 +1,160 @@ -{ - "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "Cacahuetes", - "QuestSequence": [ - { - "Sequence": 0, - "Steps": [ - { - "DataId": 1000692, - "Position": { - "X": -258.8083, - "Y": -5.7735243, - "Z": -27.267883 - }, - "TerritoryId": 133, - "AetheryteShortcut": "Gridania", - "AethernetShortcut": [ - "[Gridania] Aetheryte Plaza", - "[Gridania] Conjurers' Guild" - ], - "InteractionType": "AcceptQuest", - "SkipConditions": { - "AetheryteShortcutIf": { - "InSameTerritory": true, - "InTerritory": [ - 133 - ] - } - } - } - ] - }, - { - "Sequence": 1, - "Steps": [ - { - "DataId": 1000767, - "Position": { - "X": -483.42108, - "Y": 10.130882, - "Z": 209.46057 - }, - "TerritoryId": 152, - "InteractionType": "Interact", - "AetheryteShortcut": "East Shroud - Hawthorne Hut", - "SkipConditions": { - "AetheryteShortcutIf": { - "InSameTerritory": true - } - } - } - ] - }, - { - "Sequence": 2, - "Steps": [ - { - "DataId": 2000885, - "Position": { - "X": -510.6655, - "Y": 5.8422394, - "Z": 35.87895 - }, - "TerritoryId": 152, - "InteractionType": "Combat", - "EnemySpawnType": "AfterInteraction", - "KillEnemyDataIds": [ - 295 - ] - } - ] - }, - { - "Sequence": 3, - "Steps": [ - { - "DataId": 1000767, - "Position": { - "X": -483.42108, - "Y": 10.130882, - "Z": 209.46057 - }, - "TerritoryId": 152, - "InteractionType": "Interact" - } - ] - }, - { - "Sequence": 4, - "Steps": [ - { - "DataId": 2000887, - "Position": { - "X": -510.76526, - "Y": 6.1798096, - "Z": 35.568726 - }, - "TerritoryId": 152, - "InteractionType": "SinglePlayerDuty" - } - ] - }, - { - "Sequence": 5, - "Steps": [ - { - "DataId": 1000767, - "Position": { - "X": -483.42108, - "Y": 10.130882, - "Z": 209.46057 - }, - "TerritoryId": 152, - "InteractionType": "Interact" - } - ] - }, - { - "Sequence": 255, - "Steps": [ - { - "DataId": 1000692, - "Position": { - "X": -258.8083, - "Y": -5.7735243, - "Z": -27.267883 - }, - "TerritoryId": 133, - "InteractionType": "CompleteQuest", - "AetheryteShortcut": "Gridania", - "AethernetShortcut": [ - "[Gridania] Aetheryte Plaza", - "[Gridania] Conjurers' Guild" - ], - "NextQuestId": 92 - } - ] - } - ] -} +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000692, + "Position": { + "X": -258.8083, + "Y": -5.7735243, + "Z": -27.267883 + }, + "TerritoryId": 133, + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Conjurers' Guild" + ], + "InteractionType": "AcceptQuest", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 133 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1001263, + "Position": { + "X": 181.41443, + "Y": -2.3519497, + "Z": -240.40594 + }, + "TerritoryId": 133, + "InteractionType": "Interact", + "TargetTerritoryId": 152, + "AethernetShortcut": [ + "[Gridania] Conjurers' Guild", + "[Gridania] Lancers' Guild" + ], + "SkipConditions": { + "StepIf": { + "AetheryteUnlocked": "East Shroud - Hawthorne Hut" + } + } + }, + { + "DataId": 1000767, + "Position": { + "X": -483.42108, + "Y": 10.130882, + "Z": 209.46057 + }, + "TerritoryId": 152, + "InteractionType": "Interact", + "AetheryteShortcut": "East Shroud - Hawthorne Hut", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2000885, + "Position": { + "X": -510.6655, + "Y": 5.8422394, + "Z": 35.87895 + }, + "TerritoryId": 152, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 295 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1000767, + "Position": { + "X": -483.42108, + "Y": 10.130882, + "Z": 209.46057 + }, + "TerritoryId": 152, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2000887, + "Position": { + "X": -510.76526, + "Y": 6.1798096, + "Z": 35.568726 + }, + "TerritoryId": 152, + "InteractionType": "SinglePlayerDuty" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1000767, + "Position": { + "X": -483.42108, + "Y": 10.130882, + "Z": 209.46057 + }, + "TerritoryId": 152, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000692, + "Position": { + "X": -258.8083, + "Y": -5.7735243, + "Z": -27.267883 + }, + "TerritoryId": 133, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Conjurers' Guild" + ], + "NextQuestId": 92 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WVR/189_So You Want to Be a Weaver.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WVR/189_So You Want to Be a Weaver.json new file mode 100644 index 00000000..50cad2af --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WVR/189_So You Want to Be a Weaver.json @@ -0,0 +1,41 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1002283, + "Position": { + "X": 134.90503, + "Y": 7.5919275, + "Z": 98.039185 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Weavers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] + } + }, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSWVR001_00189_Q1_000_1", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Class Quests/WVR/534_Way of the Weaver.json b/QuestPaths/2.x - A Realm Reborn/Class Quests/WVR/534_Way of the Weaver.json new file mode 100644 index 00000000..8e517afb --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Class Quests/WVR/534_Way of the Weaver.json @@ -0,0 +1,43 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1002283, + "Position": { + "X": 134.90503, + "Y": 7.5919275, + "Z": 98.039185 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1003818, + "Position": { + "X": 157.36621, + "Y": 7.7920074, + "Z": 98.924194 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CLSWVR011_00534_SYSTEM_Q0", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Gridania/129_Spirithold Broken.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Gridania/129_Spirithold Broken.json index e687b40c..8c7b51e1 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Gridania/129_Spirithold Broken.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Gridania/129_Spirithold Broken.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 225 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Gridania/445_Chasing Shadows.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Gridania/445_Chasing Shadows.json index 5eebced7..d59a446c 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Gridania/445_Chasing Shadows.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Gridania/445_Chasing Shadows.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 233 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Gridania/449_Renewing the Covenant.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Gridania/449_Renewing the Covenant.json index 0a5caf1b..55d42793 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Gridania/449_Renewing the Covenant.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Gridania/449_Renewing the Covenant.json @@ -57,13 +57,12 @@ }, { "Position": { - "X": 49.65071, - "Y": -8.046952, - "Z": 102.32186 + "X": 40.596844, + "Y": -8, + "Z": 103.85207 }, "TerritoryId": 132, - "InteractionType": "WalkTo", - "$": "New Gridania Navmesh workaround" + "InteractionType": "WalkTo" }, { "DataId": 1000460, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Limsa/414_Victory in Peril.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Limsa/414_Victory in Peril.json index b4a19a72..05886053 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Limsa/414_Victory in Peril.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Limsa/414_Victory in Peril.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 249 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Limsa/469_Just Deserts.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Limsa/469_Just Deserts.json index 83d0dd96..62476d4e 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Limsa/469_Just Deserts.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Limsa/469_Just Deserts.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 272 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Limsa/543_Lurkers in the Grotto.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Limsa/543_Lurkers in the Grotto.json index 6c4e8377..8e6aad40 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Limsa/543_Lurkers in the Grotto.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Limsa/543_Lurkers in the Grotto.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 252 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Limsa/544_Feint and Strike.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Limsa/544_Feint and Strike.json index b12023a3..e812ae0f 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Limsa/544_Feint and Strike.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Limsa/544_Feint and Strike.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 280 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/245_It's Probably Pirates.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/245_It's Probably Pirates.json index 2abe3f67..8a352254 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/245_It's Probably Pirates.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/245_It's Probably Pirates.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1036 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/343_Lord of the Inferno.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/343_Lord of the Inferno.json index 0b6de9a4..ff980ffa 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/343_Lord of the Inferno.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/343_Lord of the Inferno.json @@ -1,10 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 275, - 1045 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/510_A Wild Rose By Any Other Name.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/510_A Wild Rose By Any Other Name.json index 486e38a9..c3ea23c7 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/510_A Wild Rose By Any Other Name.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/510_A Wild Rose By Any Other Name.json @@ -44,15 +44,33 @@ "Sequence": 255, "Steps": [ { + "Position": { + "X": -64.84354, + "Y": -3.6581912, + "Z": 186.08156 + }, "TerritoryId": 141, - "InteractionType": "AttuneAetheryte", - "Aetheryte": "Central Thanalan - Black Brush Station", + "InteractionType": "WalkTo", "AetheryteShortcut": "Ul'dah", "AethernetShortcut": [ "[Ul'dah] Aetheryte Plaza", "[Ul'dah] Gate of Nald (Central Thanalan)" ] }, + { + "Position": { + "X": -62.2836, + "Y": -3.6582258, + "Z": 144.35869 + }, + "TerritoryId": 141, + "InteractionType": "WalkTo" + }, + { + "TerritoryId": 141, + "InteractionType": "AttuneAetheryte", + "Aetheryte": "Central Thanalan - Black Brush Station" + }, { "Position": { "X": 454.0109, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/574_Dressed to Deceive.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/574_Dressed to Deceive.json index 75423c9d..7580849a 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/574_Dressed to Deceive.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/574_Dressed to Deceive.json @@ -190,6 +190,10 @@ "ItemId": 30362, "TargetTerritoryId": 140 }, + { + "TerritoryId": 140, + "InteractionType": "EquipRecommended" + }, { "Position": { "X": -492.96475, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/621_For the Children.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/621_For the Children.json index 2c176bc2..147d35b0 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/621_For the Children.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/621_For the Children.json @@ -41,6 +41,7 @@ "Y": -0.48849356, "Z": -278.41507 }, + "StopDistance": 0.5, "TerritoryId": 145, "InteractionType": "Combat", "EnemySpawnType": "AutoOnEnterArea", diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/660_Into a Copper Hell.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/660_Into a Copper Hell.json index 83960d58..b6f45f31 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/660_Into a Copper Hell.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/660_Into a Copper Hell.json @@ -1,10 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1038, - 274 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/677_Fire in the Gloom.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/677_Fire in the Gloom.json index f62baef3..7340e66a 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/677_Fire in the Gloom.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/677_Fire in the Gloom.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1037 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/702_My Little Chocobo (Immortal Flames).json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/702_My Little Chocobo (Immortal Flames).json new file mode 100644 index 00000000..200da05f --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Shared/702_My Little Chocobo (Immortal Flames).json @@ -0,0 +1,88 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": -119.1183, + "Y": 3.7999938, + "Z": -104.33473 + }, + "TerritoryId": 130, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Ul'dah", + "$": "Ul'dah Aetheryte to Immortal Flames" + }, + { + "DataId": 1004576, + "Position": { + "X": -141.64954, + "Y": 4.1, + "Z": -114.67157 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1002390, + "Position": { + "X": -143.45007, + "Y": 4.5499268, + "Z": -108.537415 + }, + "TerritoryId": 130, + "InteractionType": "Instruction", + "Comment": "Buy Flame Chocobo Issuance" + }, + { + "DataId": 1001978, + "Position": { + "X": 55.344482, + "Y": 4.124078, + "Z": -143.9079 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1006003, + "Position": { + "X": 51.621216, + "Y": 4, + "Z": -142.22937 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1001978, + "Position": { + "X": 55.344482, + "Y": 4.124078, + "Z": -143.9079 + }, + "TerritoryId": 130, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Ul'dah/3853_Heir Today, Gone Tomorrow.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Ul'dah/3853_Heir Today, Gone Tomorrow.json index fd3d1dcd..14305617 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Ul'dah/3853_Heir Today, Gone Tomorrow.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Ul'dah/3853_Heir Today, Gone Tomorrow.json @@ -17,25 +17,24 @@ } ] }, - - - { "Sequence": 1, "Steps": [ - { -"DataId": 353, -"Position": { - "X": 112.41321, - "Y": 28.93967, - "Z": -37.277832 -}, -"TerritoryId": 141, -"InteractionType": "Combat", -"EnemySpawnType": "OverworldEnemies", -"KillEnemyDataIds": [352,353] -}, + "DataId": 353, + "Position": { + "X": 112.41321, + "Y": 28.93967, + "Z": -37.277832 + }, + "TerritoryId": 141, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "KillEnemyDataIds": [ + 352, + 353 + ] + }, { "Position": { "X": 125.61467, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Ul'dah/550_Underneath the Sultantree.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Ul'dah/550_Underneath the Sultantree.json index 5446546e..c12bda58 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Ul'dah/550_Underneath the Sultantree.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Ul'dah/550_Underneath the Sultantree.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 270 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Ul'dah/551_Duty, Honor, Country.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Ul'dah/551_Duty, Honor, Country.json index 016fb60c..c16c22b9 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Ul'dah/551_Duty, Honor, Country.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Ul'dah/551_Duty, Honor, Country.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 271 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/A0-Gridania to East Shroud/3856_We Come in Peace.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/A0-Gridania to East Shroud/3856_We Come in Peace.json index cc54a28b..a7fddd2e 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/A0-Gridania to East Shroud/3856_We Come in Peace.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/A0-Gridania to East Shroud/3856_We Come in Peace.json @@ -1,6 +1,9 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": ["liza", "JerryWester"], + "Author": [ + "liza", + "JerryWester" + ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/A3-South Shroud, Buscarron’s Druthers/3860_Never Forget.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/A3-South Shroud, Buscarron’s Druthers/3860_Never Forget.json index 02861da3..c54a4a62 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/A3-South Shroud, Buscarron’s Druthers/3860_Never Forget.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/A3-South Shroud, Buscarron’s Druthers/3860_Never Forget.json @@ -80,16 +80,60 @@ "Sequence": 4, "Steps": [ { - "DataId": 1000868, - "Position": { - "X": -192.00433, - "Y": 0.9999907, - "Z": 211.68835 - }, - "StopDistance": 7, - "TerritoryId": 129, - "InteractionType": "Interact", - "TargetTerritoryId": 138 + "TerritoryId": 135, + "InteractionType": "AttuneAetheryte", + "Aetheryte": "Lower La Noscea - Moraby Drydocks", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Tempest Gate (Lower La Noscea)" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "AetheryteUnlocked": "Lower La Noscea - Moraby Drydocks" + }, + "AethernetShortcutIf": { + "AetheryteUnlocked": "Lower La Noscea - Moraby Drydocks" + }, + "StepIf": { + "AetheryteUnlocked": "Lower La Noscea - Moraby Drydocks" + } + } + }, + { + "TerritoryId": 134, + "InteractionType": "AttuneAetheryte", + "Aetheryte": "Middle La Noscea - Summerford Farms", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Zephyr Gate (Middle La Noscea)" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "AetheryteUnlocked": "Middle La Noscea - Summerford Farms" + }, + "AethernetShortcutIf": { + "AetheryteUnlocked": "Middle La Noscea - Summerford Farms" + }, + "StepIf": { + "AetheryteUnlocked": "Middle La Noscea - Summerford Farms" + } + } + }, + { + "TerritoryId": 138, + "InteractionType": "AttuneAetheryte", + "Aetheryte": "Western La Noscea - Swiftperch", + "AetheryteShortcut": "Western La Noscea - Aleport", + "SkipConditions": { + "AetheryteShortcutIf": { + "AetheryteUnlocked": "Western La Noscea - Swiftperch" + }, + "StepIf": { + "AetheryteUnlocked": "Western La Noscea - Swiftperch" + } + } }, { "DataId": 1003393, @@ -99,7 +143,8 @@ "Z": 351.76624 }, "TerritoryId": 138, - "InteractionType": "Interact" + "InteractionType": "Interact", + "AetheryteShortcut": "Western La Noscea - Aleport" } ] }, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/A3-South Shroud, Buscarron’s Druthers/514_Into the Beast's Maw.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/A3-South Shroud, Buscarron’s Druthers/514_Into the Beast's Maw.json index 12924d71..cf0acff2 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/A3-South Shroud, Buscarron’s Druthers/514_Into the Beast's Maw.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/A3-South Shroud, Buscarron’s Druthers/514_Into the Beast's Maw.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "JerryWester", - "TerritoryBlacklist": [ - 1039 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/B2-Eastern La Noscea, Brayflox, Cheese and Wine/832_The Things We Do for Cheese.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/B2-Eastern La Noscea, Brayflox, Cheese and Wine/832_The Things We Do for Cheese.json index 61cf091c..bcb40f05 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/B2-Eastern La Noscea, Brayflox, Cheese and Wine/832_The Things We Do for Cheese.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/B2-Eastern La Noscea, Brayflox, Cheese and Wine/832_The Things We Do for Cheese.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "JerryWester", - "TerritoryBlacklist": [ - 1041 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/B4-Titan/857_Lord of Crags.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/B4-Titan/857_Lord of Crags.json index 28997d99..e0898189 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/B4-Titan/857_Lord of Crags.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/B4-Titan/857_Lord of Crags.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "JerryWester", - "TerritoryBlacklist": [ - 1046 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/B5-Western Thanalan/876_Bringing out the Dead.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/B5-Western Thanalan/876_Bringing out the Dead.json index 8db84884..6b4070d0 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/B5-Western Thanalan/876_Bringing out the Dead.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/B5-Western Thanalan/876_Bringing out the Dead.json @@ -269,7 +269,8 @@ "Z": -353.6584 }, "TerritoryId": 140, - "InteractionType": "Interact" + "InteractionType": "Interact", + "DisableNavmesh": true } ] }, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/B9-Coerthas Central Highlands, Whitebrim Front/3869_The Best Inventions.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/B9-Coerthas Central Highlands, Whitebrim Front/3869_The Best Inventions.json index 5d05d1dc..af03074f 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/B9-Coerthas Central Highlands, Whitebrim Front/3869_The Best Inventions.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/B9-Coerthas Central Highlands, Whitebrim Front/3869_The Best Inventions.json @@ -26,6 +26,50 @@ { "Sequence": 1, "Steps": [ + { + "Position": { + "X": -417.37885, + "Y": 224.99997, + "Z": -295.45523 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (top)", + "Mount": true + }, + { + "Position": { + "X": -417.70758, + "Y": 221.5, + "Z": -287.7873 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (middle/top)", + "DisableNavmesh": true + }, + { + "Position": { + "X": -421.45218, + "Y": 221.5, + "Z": -287.28427 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (middle/bottom)", + "DisableNavmesh": true + }, + { + "Position": { + "X": -421.5105, + "Y": 218.1, + "Z": -297.2496 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (bottom)", + "DisableNavmesh": true + }, { "Position": { "X": -491.4813, @@ -60,9 +104,9 @@ "Steps": [ { "Position": { - "X": -421.5307, - "Y": 219.52408, - "Z": -292.88748 + "X": -421.5105, + "Y": 218.1, + "Z": -297.2496 }, "TerritoryId": 155, "InteractionType": "WalkTo", @@ -70,13 +114,36 @@ }, { "Position": { - "X": -417.45395, - "Y": 223.30249, - "Z": -291.59283 + "X": -421.45218, + "Y": 221.5, + "Z": -287.28427 }, "TerritoryId": 155, "InteractionType": "WalkTo", - "Comment": "North Whitebrim, Stairs (top)" + "Comment": "North Whitebrim, Stairs (middle/bottom)", + "DisableNavmesh": true + }, + { + "Position": { + "X": -417.70758, + "Y": 221.5, + "Z": -287.7873 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (middle/top)", + "DisableNavmesh": true + }, + { + "Position": { + "X": -417.37885, + "Y": 224.99997, + "Z": -295.45523 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (top)", + "DisableNavmesh": true }, { "DataId": 1006461, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/B9-Coerthas Central Highlands, Whitebrim Front/924_Ye of Little Faith.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/B9-Coerthas Central Highlands, Whitebrim Front/924_Ye of Little Faith.json index 0dc1d448..f3401f9b 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/B9-Coerthas Central Highlands, Whitebrim Front/924_Ye of Little Faith.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/B9-Coerthas Central Highlands, Whitebrim Front/924_Ye of Little Faith.json @@ -43,9 +43,9 @@ "Steps": [ { "Position": { - "X": -421.5307, - "Y": 219.52408, - "Z": -292.88748 + "X": -421.5105, + "Y": 218.1, + "Z": -297.2496 }, "TerritoryId": 155, "InteractionType": "WalkTo", @@ -53,13 +53,36 @@ }, { "Position": { - "X": -417.45395, - "Y": 223.30249, - "Z": -291.59283 + "X": -421.45218, + "Y": 221.5, + "Z": -287.28427 }, "TerritoryId": 155, "InteractionType": "WalkTo", - "Comment": "North Whitebrim, Stairs (top)" + "Comment": "North Whitebrim, Stairs (middle/bottom)", + "DisableNavmesh": true + }, + { + "Position": { + "X": -417.70758, + "Y": 221.5, + "Z": -287.7873 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (middle/top)", + "DisableNavmesh": true + }, + { + "Position": { + "X": -417.37885, + "Y": 224.99997, + "Z": -295.45523 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (top)", + "DisableNavmesh": true }, { "DataId": 1006442, @@ -76,6 +99,50 @@ { "Sequence": 3, "Steps": [ + { + "Position": { + "X": -417.37885, + "Y": 224.99997, + "Z": -295.45523 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (top)", + "Mount": true + }, + { + "Position": { + "X": -417.70758, + "Y": 221.5, + "Z": -287.7873 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (middle/top)", + "DisableNavmesh": true + }, + { + "Position": { + "X": -421.45218, + "Y": 221.5, + "Z": -287.28427 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (middle/bottom)", + "DisableNavmesh": true + }, + { + "Position": { + "X": -421.5105, + "Y": 218.1, + "Z": -297.2496 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (bottom)", + "DisableNavmesh": true + }, { "DataId": 1006443, "Position": { diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/B9-Coerthas Central Highlands, Whitebrim Front/927_Factual Folklore.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/B9-Coerthas Central Highlands, Whitebrim Front/927_Factual Folklore.json index 27b1f566..b9550d58 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/B9-Coerthas Central Highlands, Whitebrim Front/927_Factual Folklore.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/B9-Coerthas Central Highlands, Whitebrim Front/927_Factual Folklore.json @@ -142,9 +142,9 @@ "Steps": [ { "Position": { - "X": -421.5307, - "Y": 219.52408, - "Z": -292.88748 + "X": -421.5105, + "Y": 218.1, + "Z": -297.2496 }, "TerritoryId": 155, "InteractionType": "WalkTo", @@ -152,13 +152,36 @@ }, { "Position": { - "X": -417.45395, - "Y": 223.30249, - "Z": -291.59283 + "X": -421.45218, + "Y": 221.5, + "Z": -287.28427 }, "TerritoryId": 155, "InteractionType": "WalkTo", - "Comment": "North Whitebrim, Stairs (top)" + "Comment": "North Whitebrim, Stairs (middle/bottom)", + "DisableNavmesh": true + }, + { + "Position": { + "X": -417.70758, + "Y": 221.5, + "Z": -287.7873 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (middle/top)", + "DisableNavmesh": true + }, + { + "Position": { + "X": -417.37885, + "Y": 224.99997, + "Z": -295.45523 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (top)", + "DisableNavmesh": true }, { "DataId": 1007567, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/C0-Coerthas Central Highlands, Whitebrim Front/938_Influencing Inquisitors.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/C0-Coerthas Central Highlands, Whitebrim Front/938_Influencing Inquisitors.json index fdfa9425..582ebcbd 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/C0-Coerthas Central Highlands, Whitebrim Front/938_Influencing Inquisitors.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/C0-Coerthas Central Highlands, Whitebrim Front/938_Influencing Inquisitors.json @@ -28,23 +28,47 @@ "Steps": [ { "Position": { - "X": -417.45395, - "Y": 223.30249, - "Z": -291.59283 + "X": -417.37885, + "Y": 224.99997, + "Z": -295.45523 }, "TerritoryId": 155, "InteractionType": "WalkTo", - "Comment": "North Whitebrim, Stairs (top)" + "Comment": "North Whitebrim, Stairs (top)", + "Mount": true }, { "Position": { - "X": -421.5307, - "Y": 219.52408, - "Z": -292.88748 + "X": -417.70758, + "Y": 221.5, + "Z": -287.7873 }, "TerritoryId": 155, "InteractionType": "WalkTo", - "Comment": "North Whitebrim, Stairs (bottom)" + "Comment": "North Whitebrim, Stairs (middle/top)", + "DisableNavmesh": true + }, + { + "Position": { + "X": -421.45218, + "Y": 221.5, + "Z": -287.28427 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (middle/bottom)", + "DisableNavmesh": true + }, + { + "Position": { + "X": -421.5105, + "Y": 218.1, + "Z": -297.2496 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (bottom)", + "DisableNavmesh": true }, { "DataId": 1006466, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/C1-Coerthas Central Highlands, The Enterprise/952_In Pursuit of the Past.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/C1-Coerthas Central Highlands, The Enterprise/952_In Pursuit of the Past.json index ce945842..ad446eeb 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/C1-Coerthas Central Highlands, The Enterprise/952_In Pursuit of the Past.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/C1-Coerthas Central Highlands, The Enterprise/952_In Pursuit of the Past.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "JerryWester", - "TerritoryBlacklist": [ - 1042 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/C1-Coerthas Central Highlands, The Enterprise/956_With the Utmost Care.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/C1-Coerthas Central Highlands, The Enterprise/956_With the Utmost Care.json index 12c69c23..d88fe04c 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/C1-Coerthas Central Highlands, The Enterprise/956_With the Utmost Care.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/C1-Coerthas Central Highlands, The Enterprise/956_With the Utmost Care.json @@ -27,7 +27,6 @@ "Sequence": 1, "Steps": [ { - "DataId": 2002327, "Position": { "X": 423.17834, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/C2-Western La Noscea, Isles of Umbra/967_History Repeating.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/C2-Western La Noscea, Isles of Umbra/967_History Repeating.json index 087bbfca..931e753c 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/C2-Western La Noscea, Isles of Umbra/967_History Repeating.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/C2-Western La Noscea, Isles of Umbra/967_History Repeating.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "JerryWester", - "TerritoryBlacklist": [ - 330 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/C6-Mor Dhona/1005_Every Little Thing She Does Is Magitek.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/C6-Mor Dhona/1005_Every Little Thing She Does Is Magitek.json index 762c7e02..07af74fb 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/C6-Mor Dhona/1005_Every Little Thing She Does Is Magitek.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/C6-Mor Dhona/1005_Every Little Thing She Does Is Magitek.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "JerryWester", - "TerritoryBlacklist": [ - 309 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/C9-Ultimate Weapon/3873_Rock the Castrum.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/C9-Ultimate Weapon/3873_Rock the Castrum.json index b45a155b..f7d746fe 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/C9-Ultimate Weapon/3873_Rock the Castrum.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/C9-Ultimate Weapon/3873_Rock the Castrum.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "JerryWester", - "TerritoryBlacklist": [ - 1043 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/C9-Ultimate Weapon/4521_Operation Archon.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/C9-Ultimate Weapon/4521_Operation Archon.json index f56eca2f..81c32c86 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/C9-Ultimate Weapon/4521_Operation Archon.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/C9-Ultimate Weapon/4521_Operation Archon.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "JerryWester", - "TerritoryBlacklist": [ - 1049 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/C9-Ultimate Weapon/4522_The Ultimate Weapon.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/C9-Ultimate Weapon/4522_The Ultimate Weapon.json index d2255ab9..c878f58b 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/C9-Ultimate Weapon/4522_The Ultimate Weapon.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/C9-Ultimate Weapon/4522_The Ultimate Weapon.json @@ -1,10 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "JerryWester", - "TerritoryBlacklist": [ - 1044, - 1048 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/E1-2.1/1190_You Have Selected Regicide.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/E1-2.1/1190_You Have Selected Regicide.json index 60dec44a..bf6395ce 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/E1-2.1/1190_You Have Selected Regicide.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/E1-2.1/1190_You Have Selected Regicide.json @@ -1,6 +1,9 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": ["JerryWester", "liza"], + "Author": [ + "JerryWester", + "liza" + ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/E2-2.2/1361_Lord of the Whorl.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/E2-2.2/1361_Lord of the Whorl.json index 1dfcc672..c030ff43 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/E2-2.2/1361_Lord of the Whorl.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/E2-2.2/1361_Lord of the Whorl.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "JerryWester", - "TerritoryBlacklist": [ - 281 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/E3-2.3/3885_Levin an Impression.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/E3-2.3/3885_Levin an Impression.json index 488ad1ea..fcafa039 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/E3-2.3/3885_Levin an Impression.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/E3-2.3/3885_Levin an Impression.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "JerryWester", - "TerritoryBlacklist": [ - 374 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/E6-2.55/427_The Parting Glass.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/E6-2.55/427_The Parting Glass.json index c02faa3e..28fc2c1b 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/E6-2.55/427_The Parting Glass.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/E6-2.55/427_The Parting Glass.json @@ -53,6 +53,7 @@ "Y": -0.63573146, "Z": -166.33862 }, + "StopDistance": 5, "TerritoryId": 141, "InteractionType": "Interact" } diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/E6-2.55/428_Before the Dawn.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/E6-2.55/428_Before the Dawn.json index a502544c..0db03bd8 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/E6-2.55/428_Before the Dawn.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/E6-2.55/428_Before the Dawn.json @@ -35,6 +35,7 @@ }, "TerritoryId": 155, "InteractionType": "CompleteQuest", + "Mount": true, "DialogueChoices": [ { "Type": "YesNo", diff --git a/QuestPaths/2.x - A Realm Reborn/Raid Quests/1159_Primal Awakening.json b/QuestPaths/2.x - A Realm Reborn/Raid Quests/1159_Primal Awakening.json new file mode 100644 index 00000000..2399d279 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Raid Quests/1159_Primal Awakening.json @@ -0,0 +1,129 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "Comment": "Only Turn 5 is required for the next quest to unlock", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "TerritoryId": 132, + "InteractionType": "UseItem", + "ItemId": 30362, + "TargetTerritoryId": 140, + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 140, + 212 + ] + } + } + }, + { + "Position": { + "X": -492.96475, + "Y": 20.999884, + "Z": -380.82272 + }, + "TerritoryId": 140, + "InteractionType": "WalkTo", + "$": "Avoid walking around Waking Sands table", + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 212 + ] + } + } + }, + { + "DataId": 2001711, + "Position": { + "X": -480.9181, + "Y": 18.00103, + "Z": -386.862 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "TargetTerritoryId": 212, + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 212 + ] + } + } + }, + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1007685, + "Position": { + "X": -18.539795, + "Y": 70.50106, + "Z": 17.746216 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "AetheryteShortcut": "Eastern La Noscea - Wineport" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 358.13956, + "Y": 76.42267, + "Z": -98.75324 + }, + "TerritoryId": 137, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2002609, + "Position": { + "X": 356.98486, + "Y": 77.71411, + "Z": -99.83978 + }, + "TerritoryId": 137, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1007627, + "Position": { + "X": 13.260071, + "Y": 65.04303, + "Z": 43.808594 + }, + "TerritoryId": 137, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 1160 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Raid Quests/1160_Alisaie's Pledge.json b/QuestPaths/2.x - A Realm Reborn/Raid Quests/1160_Alisaie's Pledge.json new file mode 100644 index 00000000..cc58159a --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Raid Quests/1160_Alisaie's Pledge.json @@ -0,0 +1,93 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "TerritoryId": 132, + "InteractionType": "UseItem", + "ItemId": 30362, + "TargetTerritoryId": 140, + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 140, + 212 + ] + } + } + }, + { + "Position": { + "X": -492.96475, + "Y": 20.999884, + "Z": -380.82272 + }, + "TerritoryId": 140, + "InteractionType": "WalkTo", + "$": "Avoid walking around Waking Sands table", + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 212 + ] + } + } + }, + { + "DataId": 2001711, + "Position": { + "X": -480.9181, + "Y": 18.00103, + "Z": -386.862 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "TargetTerritoryId": 212, + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 212 + ] + } + } + }, + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_GAIUSD102_01160_Q1_000_000", + "Yes": false + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1007684, + "Position": { + "X": -2.975586, + "Y": -3.000001, + "Z": -55.10034 + }, + "TerritoryId": 212, + "InteractionType": "CompleteQuest", + "NextQuestId": 1313 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Raid Quests/1313_Another Turn in the Coil.json b/QuestPaths/2.x - A Realm Reborn/Raid Quests/1313_Another Turn in the Coil.json new file mode 100644 index 00000000..eac21b58 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Raid Quests/1313_Another Turn in the Coil.json @@ -0,0 +1,148 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "Comment": "Only Turn 9 is required for the next quest to unlock", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "TerritoryId": 132, + "InteractionType": "UseItem", + "ItemId": 30362, + "TargetTerritoryId": 140, + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 140, + 212 + ] + } + } + }, + { + "Position": { + "X": -492.96475, + "Y": 20.999884, + "Z": -380.82272 + }, + "TerritoryId": 140, + "InteractionType": "WalkTo", + "$": "Avoid walking around Waking Sands table", + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 212 + ] + } + } + }, + { + "DataId": 2001711, + "Position": { + "X": -480.9181, + "Y": 18.00103, + "Z": -386.862 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "TargetTerritoryId": 212, + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 212 + ] + } + } + }, + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1008538, + "Position": { + "X": -35.26361, + "Y": -45.545444, + "Z": 295.36877 + }, + "TerritoryId": 154, + "InteractionType": "Interact", + "AetheryteShortcut": "North Shroud - Fallgourd Float" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -43.719337, + "Y": -46.570717, + "Z": 288.87 + }, + "TerritoryId": 154, + "InteractionType": "WalkTo", + "Mount": true + }, + { + "Position": { + "X": -238.82307, + "Y": -75.39517, + "Z": 422.71375 + }, + "TerritoryId": 154, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1008539, + "Position": { + "X": -236.74377, + "Y": -75.699936, + "Z": 423.0868 + }, + "TerritoryId": 154, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": -43.719337, + "Y": -46.570717, + "Z": 288.87 + }, + "TerritoryId": 154, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1008538, + "Position": { + "X": -35.26361, + "Y": -45.545444, + "Z": 295.36877 + }, + "TerritoryId": 154, + "InteractionType": "CompleteQuest", + "NextQuestId": 1314 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Raid Quests/1314_Alisaie's Resolve.json b/QuestPaths/2.x - A Realm Reborn/Raid Quests/1314_Alisaie's Resolve.json new file mode 100644 index 00000000..dfeadd0e --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Raid Quests/1314_Alisaie's Resolve.json @@ -0,0 +1,86 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": -59.93238, + "Y": 77.08961, + "Z": -204.68428 + }, + "TerritoryId": 147, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Northern Thanalan - Ceruleum Processing Plant", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "DataId": 1008540, + "Position": { + "X": -60.31891, + "Y": 76.76807, + "Z": -203.23492 + }, + "TerritoryId": 147, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_GAIUSD302_01314_Q1_000_000", + "Yes": false + } + ] + } + ] + }, + { + "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", + "$": "Avoid walking around Waking Sands table" + }, + { + "DataId": 2001711, + "Position": { + "X": -480.9181, + "Y": 18.00103, + "Z": -386.862 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "TargetTerritoryId": 212 + }, + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Raid Quests/43_Fragments of Truth.json b/QuestPaths/2.x - A Realm Reborn/Raid Quests/43_Fragments of Truth.json new file mode 100644 index 00000000..3f8b8c2f --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Raid Quests/43_Fragments of Truth.json @@ -0,0 +1,173 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "Comment": "Only Turn 13 is required for the next quest to unlock", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "TerritoryId": 132, + "InteractionType": "UseItem", + "ItemId": 30362, + "TargetTerritoryId": 140, + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 140, + 212 + ] + } + } + }, + { + "Position": { + "X": -492.96475, + "Y": 20.999884, + "Z": -380.82272 + }, + "TerritoryId": 140, + "InteractionType": "WalkTo", + "$": "Avoid walking around Waking Sands table", + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 212 + ] + } + } + }, + { + "DataId": 2001711, + "Position": { + "X": -480.9181, + "Y": 18.00103, + "Z": -386.862 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "TargetTerritoryId": 212, + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 212 + ] + } + } + }, + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 430.20032, + "Y": 3.6547468, + "Z": 168.62611 + }, + "TerritoryId": 145, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "Fly": true + }, + { + "DataId": 1009769, + "Position": { + "X": 430.6858, + "Y": 3.26411, + "Z": 171.58765 + }, + "StopDistance": 5, + "TerritoryId": 145, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1009770, + "Position": { + "X": 469.5963, + "Y": -3.4332886, + "Z": -781.1856 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "AetheryteShortcut": "Mor Dhona", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1009771, + "Position": { + "X": -71.61066, + "Y": 48.96479, + "Z": -52.048523 + }, + "TerritoryId": 147, + "InteractionType": "Interact", + "AetheryteShortcut": "Northern Thanalan - Ceruleum Processing Plant" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -67.2906, + "Y": 71.11877, + "Z": -189.74506 + }, + "TerritoryId": 147, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1009772, + "Position": { + "X": -67.12445, + "Y": 71.293205, + "Z": -190.96667 + }, + "TerritoryId": 147, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1009768, + "Position": { + "X": -103.868225, + "Y": 51.873333, + "Z": -58.365784 + }, + "TerritoryId": 147, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 44 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Raid Quests/44_Alisaie's Path.json b/QuestPaths/2.x - A Realm Reborn/Raid Quests/44_Alisaie's Path.json new file mode 100644 index 00000000..731170bc --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Raid Quests/44_Alisaie's Path.json @@ -0,0 +1,46 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1009777, + "Position": { + "X": -59.983215, + "Y": 76.798584, + "Z": -204.0589 + }, + "StopDistance": 1, + "TerritoryId": 147, + "InteractionType": "AcceptQuest", + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_GAIUSD502_00044_Q1_000_000", + "Yes": false + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1009771, + "Position": { + "X": -71.61066, + "Y": 48.96479, + "Z": -52.048523 + }, + "TerritoryId": 147, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Central Shroud/1560_Bird in Hand.json b/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Central Shroud/1560_Bird in Hand.json new file mode 100644 index 00000000..4038b5b7 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Central Shroud/1560_Bird in Hand.json @@ -0,0 +1,222 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "alydev", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000471, + "Position": { + "X": -60.471558, + "Y": 0.19999865, + "Z": 6.301941 + }, + "TerritoryId": 148, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2004436, + "Position": { + "X": -58.06067, + "Y": 0.19836426, + "Z": 5.355835 + }, + "TerritoryId": 148, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 8 + ] + }, + { + "DataId": 2004432, + "Position": { + "X": -64.62195, + "Y": -0.015319824, + "Z": -5.2339478 + }, + "TerritoryId": 148, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2004433, + "Position": { + "X": -47.28778, + "Y": -0.015319824, + "Z": -4.0131226 + }, + "TerritoryId": 148, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2004434, + "Position": { + "X": -51.773926, + "Y": 0.19836426, + "Z": 16.128723 + }, + "TerritoryId": 148, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 2004435, + "Position": { + "X": -63.309692, + "Y": 0.19836426, + "Z": 16.03717 + }, + "TerritoryId": 148, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1000471, + "Position": { + "X": -60.471558, + "Y": 0.19999865, + "Z": 6.301941 + }, + "TerritoryId": 148, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1000473, + "Position": { + "X": -44.14441, + "Y": 0.74388826, + "Z": -32.88324 + }, + "TerritoryId": 148, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1000471, + "Position": { + "X": -60.471558, + "Y": 0.19999865, + "Z": 6.301941 + }, + "TerritoryId": 148, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1000470, + "Position": { + "X": -59.006653, + "Y": -0.010835781, + "Z": 26.41333 + }, + "TerritoryId": 148, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1009569, + "Position": { + "X": -56.10742, + "Y": -0.020424694, + "Z": 28.54956 + }, + "StopDistance": 7, + "TerritoryId": 148, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1000470, + "Position": { + "X": -59.006653, + "Y": -0.010835781, + "Z": 26.41333 + }, + "TerritoryId": 148, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000471, + "Position": { + "X": -60.471558, + "Y": 0.19999865, + "Z": 6.301941 + }, + "TerritoryId": 148, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Gridania/24_Coarse Correspondence.json b/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Gridania/24_Coarse Correspondence.json new file mode 100644 index 00000000..d6260666 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Gridania/24_Coarse Correspondence.json @@ -0,0 +1,40 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000206, + "Position": { + "X": 193.59119, + "Y": -0.015319824, + "Z": 42.160645 + }, + "TerritoryId": 132, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000233, + "Position": { + "X": 168.65796, + "Y": 15.5, + "Z": -95.99457 + }, + "TerritoryId": 133, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Gridania] Archers' Guild", + "[Gridania] Leatherworkers' Guild & Shaded Bower" + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Gridania/25_Quarrels with Squirrels.json b/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Gridania/25_Quarrels with Squirrels.json new file mode 100644 index 00000000..716e2012 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Gridania/25_Quarrels with Squirrels.json @@ -0,0 +1,85 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000263, + "Position": { + "X": 141.55786, + "Y": 15.5, + "Z": -274.43353 + }, + "TerritoryId": 133, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 112.12561, + "Y": 16.504576, + "Z": -268.8553 + }, + "TerritoryId": 148, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 37, + "MinimumKillCount": 6, + "CompletionQuestVariablesFlags": [ + { + "Low": 6 + }, + null, + null, + null, + null, + null + ] + } + ], + "AethernetShortcut": [ + "[Gridania] Lancers' Guild", + "[Gridania] Blue Badger Gate (Central Shroud)" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 129.21268, + "Y": 25.16017, + "Z": -318.4288 + }, + "TerritoryId": 148, + "InteractionType": "WalkTo", + "TargetTerritoryId": 132 + }, + { + "DataId": 1000263, + "Position": { + "X": 141.55786, + "Y": 15.5, + "Z": -274.43353 + }, + "TerritoryId": 133, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Lancers' Guild" + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Gridania/38_Parsemontrenomics.json b/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Gridania/38_Parsemontrenomics.json new file mode 100644 index 00000000..2cc4b90e --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Gridania/38_Parsemontrenomics.json @@ -0,0 +1,142 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000768, + "Position": { + "X": 172.35059, + "Y": 15.5, + "Z": -89.951965 + }, + "TerritoryId": 133, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 157.92119, + "Y": 15.700001, + "Z": -122.177925 + }, + "TerritoryId": 133, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + } + }, + { + "DataId": 1000238, + "Position": { + "X": 155.41309, + "Y": 15.700001, + "Z": -121.812805 + }, + "TerritoryId": 133, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "Position": { + "X": 162.74281, + "Y": 15.699926, + "Z": -59.43834 + }, + "TerritoryId": 133, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + } + }, + { + "DataId": 1000218, + "Position": { + "X": 164.72107, + "Y": 15.699947, + "Z": -58.18268 + }, + "TerritoryId": 133, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1000214, + "Position": { + "X": 151.4762, + "Y": 15.699964, + "Z": -63.920105 + }, + "StopDistance": 5, + "TerritoryId": 133, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000248, + "Position": { + "X": 143.05322, + "Y": 14.250365, + "Z": -250.72101 + }, + "TerritoryId": 133, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Gridania] Leatherworkers' Guild & Shaded Bower", + "[Gridania] Lancers' Guild" + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Gridania/42_Sylphic Gratitude.json b/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Gridania/42_Sylphic Gratitude.json new file mode 100644 index 00000000..7118b6c8 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Gridania/42_Sylphic Gratitude.json @@ -0,0 +1,149 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000286, + "Position": { + "X": -53.574463, + "Y": 7.2025366, + "Z": -118.36426 + }, + "TerritoryId": 133, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2000022, + "Position": { + "X": -52.71997, + "Y": 6.7596436, + "Z": -109.9718 + }, + "TerritoryId": 133, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 2000020, + "Position": { + "X": -63.09613, + "Y": 6.94281, + "Z": -110.85681 + }, + "TerritoryId": 133, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2000021, + "Position": { + "X": -37.979797, + "Y": 5.996765, + "Z": -101.76245 + }, + "TerritoryId": 133, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2000025, + "Position": { + "X": -47.80658, + "Y": 5.722107, + "Z": -99.4126 + }, + "TerritoryId": 133, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 4 + ] + }, + { + "DataId": 2000024, + "Position": { + "X": -53.75763, + "Y": 6.4850464, + "Z": -89.52472 + }, + "TerritoryId": 133, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 8 + ] + }, + { + "DataId": 2000023, + "Position": { + "X": -43.808716, + "Y": 6.4850464, + "Z": -85.80151 + }, + "TerritoryId": 133, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000286, + "Position": { + "X": -53.574463, + "Y": 7.2025366, + "Z": -118.36426 + }, + "TerritoryId": 133, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Gridania/49_I Am Millicent, Hear Me Roar.json b/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Gridania/49_I Am Millicent, Hear Me Roar.json new file mode 100644 index 00000000..a7260e22 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Quests/Black Shroud/Gridania/49_I Am Millicent, Hear Me Roar.json @@ -0,0 +1,36 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000788, + "Position": { + "X": -43.90027, + "Y": 7.0877223, + "Z": -136.70563 + }, + "TerritoryId": 133, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000429, + "Position": { + "X": 56.50415, + "Y": 7.9990244, + "Z": -132.12793 + }, + "TerritoryId": 133, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1204_The Rise and Fall of a Gentlemen.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1204_The Rise and Fall of a Gentlemen.json new file mode 100644 index 00000000..c945779e --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1204_The Rise and Fall of a Gentlemen.json @@ -0,0 +1,118 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "AetheryteShortcut": "Ul'dah", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "DataId": 1001285, + "Position": { + "X": -68.77246, + "Y": 4.0411124, + "Z": -126.51257 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CHRHDB101_01204_Q1_000_1", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "Fly": true, + "DataId": 1005709, + "Position": { + "X": -464.16425, + "Y": -26.945036, + "Z": 85.40466 + }, + "TerritoryId": 145, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "AetheryteShortcut": "Southern Thanalan - Forgotten Springs", + "Fly": true, + "Position": { + "X": -273.9414, + "Y": 9.756445, + "Z": 222.65837 + }, + "TerritoryId": 146, + "InteractionType": "Combat", + "EnemySpawnType": "FateEnemies", + "ComplexCombatData": [ + { + "DataId": 2390 + }, + { + "DataId": 2391 + } + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "Fly": true, + "DataId": 1005709, + "Position": { + "X": -464.16425, + "Y": -26.945036, + "Z": 85.40466 + }, + "TerritoryId": 145, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "AetheryteShortcut": "Southern Thanalan - Forgotten Springs", + "Fly": true, + "DataId": 1005710, + "Position": { + "X": 4.4403076, + "Y": 7.2767544, + "Z": 885.55725 + }, + "TerritoryId": 146, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CHRHDB101_01204_Q2_000_1", + "Answer": "TEXT_CHRHDB101_01204_Q2A2_000_2" + } + ], + "NextQuestId": 1205 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1205_Back in the Saddle.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1205_Back in the Saddle.json new file mode 100644 index 00000000..77cd8009 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1205_Back in the Saddle.json @@ -0,0 +1,98 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1005711, + "Position": { + "X": 4.837097, + "Y": 7.4445505, + "Z": 884.70276 + }, + "TerritoryId": 146, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "AetheryteShortcut": "Ul'dah", + "DataId": 1004333, + "Position": { + "X": -101.854004, + "Y": 4.0131226, + "Z": -98.95477 + }, + "StopDistance": 7, + "TerritoryId": 130, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1004331, + "Position": { + "X": -20.096191, + "Y": 4.9999676, + "Z": -133.22656 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1001313, + "Position": { + "X": 16.372864, + "Y": 7.9999795, + "Z": -106.21808 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1001285, + "Position": { + "X": -68.77246, + "Y": 4.0411124, + "Z": -126.51257 + }, + "TerritoryId": 130, + "InteractionType": "CompleteQuest", + "NextQuestId": 1206 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1206_After Her Own Heart.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1206_After Her Own Heart.json new file mode 100644 index 00000000..9ad69626 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1206_After Her Own Heart.json @@ -0,0 +1,137 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "AetheryteShortcut": "Ul'dah", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "DataId": 1001285, + "Position": { + "X": -68.77246, + "Y": 4.0411124, + "Z": -126.51257 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Weavers' Guild" + ], + "DataId": 1001691, + "Position": { + "X": 142.16821, + "Y": 7.4920034, + "Z": 104.72266 + }, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "AethernetShortcut": [ + "[Ul'dah] Weavers' Guild", + "[Ul'dah] Aetheryte Plaza" + ], + "DataId": 1005713, + "Position": { + "X": -72.98395, + "Y": 3.9999995, + "Z": -113.02362 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": -147.13564, + "Y": 11.999999, + "Z": -5.086131 + }, + "TerritoryId": 130, + "InteractionType": "WalkTo" + }, + { + "DataId": 1005716, + "Position": { + "X": -144.76239, + "Y": 12, + "Z": 0.99176025 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1005717, + "Position": { + "X": -147.17328, + "Y": 12, + "Z": -3.6469727 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 2003001, + "Position": { + "X": -144.79291, + "Y": 11.9782715, + "Z": -3.4943848 + }, + "TerritoryId": 130, + "InteractionType": "UseItem", + "ItemId": 2001126 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1005716, + "Position": { + "X": -144.76239, + "Y": 12, + "Z": 0.99176025 + }, + "StopDistance": 7, + "TerritoryId": 130, + "InteractionType": "CompleteQuest", + "NextQuestId": 1207 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1207_The Immaculate Deception.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1207_The Immaculate Deception.json new file mode 100644 index 00000000..0ffd60e7 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1207_The Immaculate Deception.json @@ -0,0 +1,341 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "AetheryteShortcut": "Ul'dah", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "DataId": 1005721, + "Position": { + "X": -144.06049, + "Y": 12, + "Z": -5.5390625 + }, + "StopDistance": 4, + "TerritoryId": 130, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "Fly": true, + "DataId": 1005722, + "Position": { + "X": -550.4387, + "Y": -5.5688405, + "Z": -176.71478 + }, + "TerritoryId": 145, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -567.424, + "Y": 5.893569, + "Z": -221.67596 + }, + "TerritoryId": 145, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + } + }, + { + "DataId": 1004042, + "Position": { + "X": -568.4138, + "Y": 5.893569, + "Z": -221.27112 + }, + "TerritoryId": 145, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1003940, + "Position": { + "X": -540.94763, + "Y": 4.134529, + "Z": -241.07733 + }, + "TerritoryId": 145, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1003939, + "Position": { + "X": -540.09314, + "Y": 4.137387, + "Z": -240.98578 + }, + "StopDistance": 4, + "TerritoryId": 145, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Fly": true, + "DataId": 1005724, + "Position": { + "X": -490.44025, + "Y": 2.8072534, + "Z": -274.34198 + }, + "TerritoryId": 145, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "Fly": true, + "DataId": 1005727, + "Position": { + "X": -221.11853, + "Y": -37.79669, + "Z": 149.67566 + }, + "TerritoryId": 145, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "DataId": 1005727, + "Position": { + "X": -221.11853, + "Y": -37.79669, + "Z": 149.67566 + }, + "TerritoryId": 145, + "InteractionType": "UseItem", + "ItemId": 2001150 + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "DataId": 1005727, + "Position": { + "X": -221.11853, + "Y": -37.79669, + "Z": 149.67566 + }, + "TerritoryId": 145, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "DataId": 1005727, + "Position": { + "X": -221.11853, + "Y": -37.79669, + "Z": 149.67566 + }, + "TerritoryId": 145, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "DataId": 1005727, + "Position": { + "X": -221.11853, + "Y": -37.79669, + "Z": 149.67566 + }, + "TerritoryId": 145, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 9, + "Steps": [ + { + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "DataId": 1005727, + "Position": { + "X": -221.11853, + "Y": -37.79669, + "Z": 149.67566 + }, + "TerritoryId": 145, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 10, + "Steps": [ + { + "DataId": 2003006, + "Position": { + "X": -208.5451, + "Y": -37.9187, + "Z": 151.87305 + }, + "TerritoryId": 145, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 2003005, + "Position": { + "X": -220.87439, + "Y": -37.857666, + "Z": 166.0028 + }, + "TerritoryId": 145, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2003004, + "Position": { + "X": -206.46985, + "Y": -37.644104, + "Z": 187.36548 + }, + "TerritoryId": 145, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 11, + "Steps": [ + { + "DataId": 1005730, + "Position": { + "X": -222.49182, + "Y": -37.896374, + "Z": 159.3805 + }, + "TerritoryId": 145, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": -535.8004, + "Y": 5.3931885, + "Z": -252.96324 + }, + "TerritoryId": 145, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1005731, + "Position": { + "X": -526.8788, + "Y": 5.404997, + "Z": -246.50952 + }, + "TerritoryId": 145, + "InteractionType": "CompleteQuest", + "NextQuestId": 1315 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1315_The Science of Deduction.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1315_The Science of Deduction.json new file mode 100644 index 00000000..db0936c9 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1315_The Science of Deduction.json @@ -0,0 +1,238 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "DataId": 1005884, + "Position": { + "X": -526.26843, + "Y": 5.4049973, + "Z": -249.25616 + }, + "StopDistance": 5, + "TerritoryId": 145, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "DataId": 1003931, + "Position": { + "X": -379.6292, + "Y": -55.85506, + "Z": 95.04846 + }, + "TerritoryId": 145, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 145, + "InteractionType": "UseItem", + "ItemId": 30362, + "TargetTerritoryId": 140 + }, + { + "DataId": 1008709, + "Position": { + "X": -431.7846, + "Y": 28.038658, + "Z": -383.1693 + }, + "TerritoryId": 140, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "AetheryteShortcut": "Western Thanalan - Horizon", + "Fly": true, + "DataId": 1008713, + "Position": { + "X": 108.99512, + "Y": 57.816406, + "Z": 12.191956 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "Fly": true, + "DataId": 1002022, + "Position": { + "X": 12.039368, + "Y": 22.144684, + "Z": 65.384766 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "Fly": true, + "DataId": 1008715, + "Position": { + "X": -69.90167, + "Y": 13.38208, + "Z": 158.73962 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2003654, + "Position": { + "X": -68.55884, + "Y": 13.809326, + "Z": 159.16675 + }, + "TerritoryId": 140, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 2003658, + "Position": { + "X": -71.06128, + "Y": 13.443176, + "Z": 155.9624 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 2003656, + "Position": { + "X": -72.95343, + "Y": 13.504211, + "Z": 159.19727 + }, + "StopDistance": 4.5, + "TerritoryId": 140, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2003657, + "Position": { + "X": -80.18622, + "Y": 13.412659, + "Z": 158.12915 + }, + "StopDistance": 4.5, + "TerritoryId": 140, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2003659, + "Position": { + "X": -76.15784, + "Y": 13.443176, + "Z": 155.90137 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1008716, + "Position": { + "X": -68.00946, + "Y": 13.443176, + "Z": 157.5188 + }, + "TerritoryId": 140, + "InteractionType": "CompleteQuest", + "NextQuestId": 1316 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1316_The Hammer.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1316_The Hammer.json new file mode 100644 index 00000000..56da32e8 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1316_The Hammer.json @@ -0,0 +1,80 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1008716, + "Position": { + "X": -68.00946, + "Y": 13.443176, + "Z": 157.5188 + }, + "TerritoryId": 140, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "AetheryteShortcut": "Northern Thanalan - Camp Bluefog", + "Fly": true, + "DataId": 2003664, + "Position": { + "X": 11.337402, + "Y": 2.670288, + "Z": 320.943 + }, + "TerritoryId": 147, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2003665, + "Position": { + "X": 34.50061, + "Y": 12.191956, + "Z": 254.13892 + }, + "TerritoryId": 147, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 110.67165, + "Y": 18.372795, + "Z": 122.4577 + }, + "TerritoryId": 147, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2003666, + "Position": { + "X": 111.192505, + "Y": 19.424683, + "Z": 121.20239 + }, + "TerritoryId": 147, + "InteractionType": "CompleteQuest", + "NextQuestId": 1317 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1317_Manderville Men.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1317_Manderville Men.json new file mode 100644 index 00000000..da8f1b2d --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1317_Manderville Men.json @@ -0,0 +1,73 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1008722, + "Position": { + "X": 109.7887, + "Y": 18.36741, + "Z": 121.72119 + }, + "TerritoryId": 147, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2003667, + "Position": { + "X": 139.48267, + "Y": 20.279175, + "Z": 102.92212 + }, + "TerritoryId": 147, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 145, + "InteractionType": "UseItem", + "ItemId": 30362, + "TargetTerritoryId": 140 + }, + { + "DataId": 1008730, + "Position": { + "X": -431.26575, + "Y": 28.038658, + "Z": -381.4298 + }, + "TerritoryId": 140, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1008735, + "Position": { + "X": -420.2793, + "Y": 23.113977, + "Z": -367.17786 + }, + "TerritoryId": 140, + "InteractionType": "CompleteQuest", + "NextQuestId": 1318 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1318_The Three Collectors.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1318_The Three Collectors.json new file mode 100644 index 00000000..a11c615b --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1318_The Three Collectors.json @@ -0,0 +1,150 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1008736, + "Position": { + "X": -418.44818, + "Y": 23.113976, + "Z": -367.8188 + }, + "StopDistance": 5, + "TerritoryId": 140, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "Fly": true, + "DataId": 1008739, + "Position": { + "X": 176.71472, + "Y": 222.1357, + "Z": 347.219 + }, + "TerritoryId": 155, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1008741, + "Position": { + "X": 249.50024, + "Y": 222.36392, + "Z": 353.6278 + }, + "TerritoryId": 155, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1008746, + "Position": { + "X": 261.46326, + "Y": 222.27127, + "Z": 320.2411 + }, + "TerritoryId": 155, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2003741, + "Position": { + "X": 394.7965, + "Y": 225.0553, + "Z": 378.80518 + }, + "TerritoryId": 155, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1008752, + "Position": { + "X": 487.81555, + "Y": 206.95914, + "Z": 479.69775 + }, + "TerritoryId": 155, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "TerritoryId": 155, + "InteractionType": "Duty", + "ContentFinderConditionId": 76 + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1008756, + "Position": { + "X": 480.12512, + "Y": 207.33582, + "Z": 475.33374 + }, + "StopDistance": 7, + "TerritoryId": 155, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "TerritoryId": 145, + "InteractionType": "UseItem", + "ItemId": 30362, + "TargetTerritoryId": 140 + }, + { + "Fly": true, + "DataId": 1008788, + "Position": { + "X": -421.46948, + "Y": 23.113977, + "Z": -367.57465 + }, + "TerritoryId": 140, + "InteractionType": "CompleteQuest", + "NextQuestId": 1438 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1438_The Business of Betrothal.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1438_The Business of Betrothal.json new file mode 100644 index 00000000..8790f51d --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1438_The Business of Betrothal.json @@ -0,0 +1,162 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "AetheryteShortcut": "Western Thanalan - Horizon", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "DataId": 1008757, + "Position": { + "X": -422.5376, + "Y": 23.113976, + "Z": -367.7882 + }, + "TerritoryId": 140, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "AetheryteShortcut": "Eastern La Noscea - Costa Del Sol", + "Fly": true, + "DataId": 1009305, + "Position": { + "X": 562.4321, + "Y": 17.654663, + "Z": 421.7135 + }, + "TerritoryId": 137, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1009307, + "Position": { + "X": 498.89368, + "Y": 10.079935, + "Z": 418.265 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CHRHDB301_01438_Q1_000_000", + "Answer": "TEXT_CHRHDB301_01438_A1_000_030" + }, + { + "Type": "List", + "Prompt": "TEXT_CHRHDB301_01438_Q2_000_000", + "Answer": "TEXT_CHRHDB301_01438_A2_000_030" + } + ], + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Fly": true, + "DataId": 1009310, + "Position": { + "X": 471.18323, + "Y": 9.96334, + "Z": 794.6135 + }, + "TerritoryId": 137, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "AetheryteShortcut": "Eastern La Noscea - Costa Del Sol", + "DataId": 1009308, + "Position": { + "X": 560.32654, + "Y": 17.707417, + "Z": 421.01147 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1009311, + "Position": { + "X": 531.2123, + "Y": 17.448051, + "Z": 454.1847 + }, + "TerritoryId": 137, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "Position": { + "X": 582.44116, + "Y": 14.587065, + "Z": 394.23407 + }, + "TerritoryId": 137, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1009317, + "Position": { + "X": 583.88635, + "Y": 14.587067, + "Z": 394.70508 + }, + "TerritoryId": 137, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 2004317, + "Position": { + "X": 515.98376, + "Y": 9.384277, + "Z": 525.81055 + }, + "TerritoryId": 137, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 1439 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1439_A Burst of Inspiration.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1439_A Burst of Inspiration.json new file mode 100644 index 00000000..ad3c659d --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1439_A Burst of Inspiration.json @@ -0,0 +1,95 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1009326, + "Position": { + "X": 526.2073, + "Y": 8.84578, + "Z": 556.54236 + }, + "TerritoryId": 137, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1009328, + "Position": { + "X": 515.0376, + "Y": 9.192075, + "Z": 524.834 + }, + "TerritoryId": 137, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 581.1095, + "Y": 14.587067, + "Z": 394.20828 + }, + "TerritoryId": 137, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1009319, + "Position": { + "X": 581.3534, + "Y": 14.587067, + "Z": 395.8037 + }, + "TerritoryId": 137, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "AetheryteShortcut": "Limsa Lominsa", + "DataId": 1001023, + "Position": { + "X": -78.62976, + "Y": 18.000334, + "Z": -22.62915 + }, + "TerritoryId": 129, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "AetheryteShortcut": "Western La Noscea - Aleport", + "DataId": 1009331, + "Position": { + "X": 311.54346, + "Y": -36.405907, + "Z": 344.71655 + }, + "TerritoryId": 138, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 1440 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1440_Seeds of Rebellion.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1440_Seeds of Rebellion.json new file mode 100644 index 00000000..9305f383 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1440_Seeds of Rebellion.json @@ -0,0 +1,215 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1009331, + "Position": { + "X": 311.54346, + "Y": -36.405907, + "Z": 344.71655 + }, + "TerritoryId": 138, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CHRHDB303_01440_Q1_000_010", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1003584, + "Position": { + "X": 317.43335, + "Y": -36.325005, + "Z": 352.86487 + }, + "TerritoryId": 138, + "InteractionType": "Interact", + "TargetTerritoryId": 138, + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + } + }, + { + "DataId": 2004324, + "Position": { + "X": -283.0091, + "Y": -40.634766, + "Z": 425.58936 + }, + "TerritoryId": 138, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2004325, + "Position": { + "X": -242.60321, + "Y": -38.68164, + "Z": 514.7324 + }, + "TerritoryId": 138, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2004326, + "Position": { + "X": -291.06586, + "Y": -38.07129, + "Z": 596.765 + }, + "TerritoryId": 138, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Comment": "Commence \"The Mandragoras\"", + "DataId": 1009335, + "Position": { + "X": -256.70258, + "Y": -40.18569, + "Z": 684.1992 + }, + "TerritoryId": 138, + "InteractionType": "Interact", + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "ExcelSheet": "Addon", + "Prompt": 102445, + "PromptIsRegularExpression": true, + "Yes": true + } + ] + }, + { + "Comment": "Fight some Mandragoras", + "Position": { + "X": -256.70258, + "Y": -40.18569, + "Z": 684.1992 + }, + "TerritoryId": 138, + "InteractionType": "Combat", + "EnemySpawnType": "FateEnemies", + "KillEnemyDataIds": [ + 2950, + 2951, + 2952, + 2953, + 2954 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "AetheryteShortcut": "Eastern La Noscea - Costa Del Sol", + "Fly": true, + "Position": { + "X": 581.46533, + "Y": 14.587067, + "Z": 393.86594 + }, + "TerritoryId": 137, + "InteractionType": "WalkTo" + }, + { + "DataId": 1009319, + "Position": { + "X": 581.3534, + "Y": 14.587067, + "Z": 395.8037 + }, + "TerritoryId": 137, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Fly": true, + "DataId": 1009336, + "Position": { + "X": 494.49902, + "Y": 11.323204, + "Z": 210.3761 + }, + "TerritoryId": 137, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "AetheryteShortcut": "Eastern La Noscea - Wineport", + "DataId": 1009337, + "Position": { + "X": -46.860474, + "Y": 75.95114, + "Z": 10.879639 + }, + "TerritoryId": 137, + "InteractionType": "CompleteQuest", + "NextQuestId": 1441 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1441_A Case of Indecency.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1441_A Case of Indecency.json new file mode 100644 index 00000000..a29c28f2 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/1441_A Case of Indecency.json @@ -0,0 +1,101 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1009341, + "Position": { + "X": -48.44745, + "Y": 75.95115, + "Z": 9.079041 + }, + "TerritoryId": 137, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "AetheryteShortcut": "Eastern La Noscea - Costa Del Sol", + "DataId": 1009351, + "Position": { + "X": 524.28467, + "Y": 17.448048, + "Z": 449.08826 + }, + "TerritoryId": 137, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1009347, + "Position": { + "X": 442.77087, + "Y": 15.823447, + "Z": 375.17358 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1009348, + "Position": { + "X": 386.19055, + "Y": 29.58076, + "Z": 350.3623 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1009345, + "Position": { + "X": 523.76587, + "Y": 17.448044, + "Z": 447.13513 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 2004328, + "Position": { + "X": 523.4607, + "Y": 17.837708, + "Z": 455.2528 + }, + "TerritoryId": 137, + "InteractionType": "CompleteQuest", + "NextQuestId": 166 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/166_Eight-armed and Dangerous.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/166_Eight-armed and Dangerous.json new file mode 100644 index 00000000..55f5271e --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/166_Eight-armed and Dangerous.json @@ -0,0 +1,205 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "AetheryteShortcut": "Eastern La Noscea - Costa Del Sol", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "DataId": 1009357, + "Position": { + "X": 528.95386, + "Y": 17.44805, + "Z": 448.69153 + }, + "StopDistance": 7, + "TerritoryId": 137, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Thaumaturges' Guild" + ], + "Position": { + "X": -153.18225, + "Y": 14.005, + "Z": 43.458076 + }, + "TerritoryId": 130, + "InteractionType": "WalkTo" + }, + { + "DataId": 1010160, + "Position": { + "X": -144.64032, + "Y": 12, + "Z": -5.6916504 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -153.18225, + "Y": 14.005, + "Z": 43.458076 + }, + "TerritoryId": 130, + "InteractionType": "WalkTo" + }, + { + "AethernetShortcut": [ + "[Ul'dah] Thaumaturges' Guild", + "[Ul'dah] Gladiators' Guild" + ], + "DataId": 1001857, + "Position": { + "X": -46.76892, + "Y": 10, + "Z": -12.741333 + }, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "AethernetShortcut": [ + "[Ul'dah] Gladiators' Guild", + "[Ul'dah] Thaumaturges' Guild" + ], + "Position": { + "X": -153.18225, + "Y": 14.005, + "Z": 43.458076 + }, + "TerritoryId": 130, + "InteractionType": "WalkTo" + }, + { + "DataId": 1010160, + "Position": { + "X": -144.64032, + "Y": 12, + "Z": -5.6916504 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -127.24249, + "Y": 7.999999, + "Z": -55.6639 + }, + "TerritoryId": 130, + "InteractionType": "WalkTo" + }, + { + "DataId": 1010188, + "Position": { + "X": -106.523315, + "Y": 4.2265673, + "Z": -82.16986 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "Position": { + "X": -123.05803, + "Y": 1.363661, + "Z": -142.65125 + }, + "TerritoryId": 130, + "InteractionType": "WalkTo" + }, + { + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "Position": { + "X": -72.12142, + "Y": 6.9845715, + "Z": 8.82207 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo" + }, + { + "DataId": 1010281, + "Position": { + "X": -70.96979, + "Y": 6.9839683, + "Z": 3.982544 + }, + "StopDistance": 7, + "TerritoryId": 131, + "InteractionType": "Interact", + "DisableNavmesh": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "AethernetShortcut": [ + "[Ul'dah] Gladiators' Guild", + "[Ul'dah] Thaumaturges' Guild" + ], + "Position": { + "X": -153.18225, + "Y": 14.005, + "Z": 43.458076 + }, + "TerritoryId": 130, + "InteractionType": "WalkTo" + }, + { + "DataId": 1010287, + "Position": { + "X": -142.71765, + "Y": 12, + "Z": -3.9215698 + }, + "TerritoryId": 130, + "InteractionType": "CompleteQuest", + "NextQuestId": 202 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/202_What Price Victory.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/202_What Price Victory.json new file mode 100644 index 00000000..d01258b6 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/202_What Price Victory.json @@ -0,0 +1,142 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1010279, + "Position": { + "X": -143.60266, + "Y": 11.999999, + "Z": -3.8911133 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -153.18225, + "Y": 14.005, + "Z": 43.458076 + }, + "TerritoryId": 130, + "InteractionType": "WalkTo" + }, + { + "AethernetShortcut": [ + "[Ul'dah] Thaumaturges' Guild", + "[Ul'dah] Gladiators' Guild" + ], + "DataId": 1010523, + "Position": { + "X": -53.48291, + "Y": 9.999997, + "Z": -4.0742188 + }, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "AetheryteShortcut": "Central Thanalan - Black Brush Station", + "Position": { + "X": -60.649715, + "Y": -11.872707, + "Z": -61.934204 + }, + "TerritoryId": 141, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1010293, + "Position": { + "X": -61.387024, + "Y": -11.84896, + "Z": -63.126587 + }, + "TerritoryId": 141, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Fly": true, + "DataId": 1010298, + "Position": { + "X": 19.851929, + "Y": 19.020214, + "Z": -421.37793 + }, + "TerritoryId": 141, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Fly": true, + "DataId": 1010310, + "Position": { + "X": -55.436035, + "Y": 3.4680986, + "Z": 260.57825 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gate of Nald (Central Thanalan)" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Thaumaturges' Guild" + ], + "Position": { + "X": -153.18225, + "Y": 14.005, + "Z": 43.458076 + }, + "TerritoryId": 130, + "InteractionType": "WalkTo" + }, + { + "DataId": 1010290, + "Position": { + "X": -144.73187, + "Y": 11.999999, + "Z": -5.661133 + }, + "TerritoryId": 130, + "InteractionType": "CompleteQuest", + "NextQuestId": 203 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/203_The Trouble with Truffles.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/203_The Trouble with Truffles.json new file mode 100644 index 00000000..cd2b096b --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/203_The Trouble with Truffles.json @@ -0,0 +1,212 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1010290, + "Position": { + "X": -144.73187, + "Y": 11.999999, + "Z": -5.661133 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -153.18225, + "Y": 14.005, + "Z": 43.458076 + }, + "TerritoryId": 130, + "InteractionType": "WalkTo" + }, + { + "AethernetShortcut": [ + "[Ul'dah] Thaumaturges' Guild", + "[Ul'dah] Gladiators' Guild" + ], + "DataId": 1010169, + "Position": { + "X": -47.501343, + "Y": 9.999995, + "Z": -11.886841 + }, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -45.67461, + "Y": 11.927631, + "Z": -16.919664 + }, + "StopDistance": 0.25, + "TerritoryId": 131, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -48.14437, + "Y": 9.999995, + "Z": -10.52473 + } + } + }, + { + "DataId": 1010316, + "Position": { + "X": -54.581604, + "Y": 9.999972, + "Z": -12.64978 + }, + "StopDistance": 7, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "AethernetShortcut": [ + "[Ul'dah] Gladiators' Guild", + "[Ul'dah] Weavers' Guild" + ], + "DataId": 2004901, + "Position": { + "X": 103.50195, + "Y": 7.9804688, + "Z": 8.255066 + }, + "TerritoryId": 131, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "Position": { + "X": 108.07826, + "Y": 8, + "Z": 8.036793 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo" + }, + { + "DataId": 2004900, + "Position": { + "X": 103.715576, + "Y": 7.9804688, + "Z": -35.233154 + }, + "TerritoryId": 131, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2004899, + "Position": { + "X": 68.0094, + "Y": 7.9804688, + "Z": -74.05206 + }, + "TerritoryId": 131, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 98.252335, + "Y": 8.000075, + "Z": -38.319664 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo" + }, + { + "AethernetShortcut": [ + "[Ul'dah] Sapphire Avenue Exchange", + "[Ul'dah] Gladiators' Guild" + ], + "DataId": 1010316, + "Position": { + "X": -54.581604, + "Y": 9.999972, + "Z": -12.64978 + }, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "AethernetShortcut": [ + "[Ul'dah] Gladiators' Guild", + "[Ul'dah] Sapphire Avenue Exchange" + ], + "Position": { + "X": 137.68585, + "Y": 3.9999998, + "Z": -58.555218 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo" + }, + { + "DataId": 1001679, + "Position": { + "X": 140.48975, + "Y": 4.0099983, + "Z": -59.80017 + }, + "StopDistance": 5, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "NextQuestId": 204 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/204_The Coliseum Conundrum.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/204_The Coliseum Conundrum.json new file mode 100644 index 00000000..e3077813 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/204_The Coliseum Conundrum.json @@ -0,0 +1,146 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1010317, + "Position": { + "X": 139.78784, + "Y": 4.0099993, + "Z": -57.114563 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "AethernetShortcut": [ + "[Ul'dah] Sapphire Avenue Exchange", + "[Ul'dah] Gladiators' Guild" + ], + "Position": { + "X": -72.12142, + "Y": 6.9845715, + "Z": 8.82207 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo" + }, + { + "DataId": 1010330, + "Position": { + "X": -69.5354, + "Y": 6.9839687, + "Z": 0.07623291 + }, + "TerritoryId": 131, + "InteractionType": "Interact", + "DisableNavmesh": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_CHRHDB404_00204_Q1_000_000", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1010772, + "Position": { + "X": -72.40405, + "Y": 6.9839687, + "Z": -0.045776367 + }, + "StopDistance": 5, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "Fly": true, + "DataId": 1010161, + "Position": { + "X": -338.3994, + "Y": -22.360315, + "Z": 434.3175 + }, + "TerritoryId": 145, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "TerritoryId": 145, + "InteractionType": "Duty", + "ContentFinderConditionId": 81 + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1010329, + "Position": { + "X": -334.21838, + "Y": -22.463528, + "Z": 432.9746 + }, + "TerritoryId": 145, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ], + "Position": { + "X": -72.12142, + "Y": 6.9845715, + "Z": 8.82207 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo" + }, + { + "DataId": 1010330, + "Position": { + "X": -69.5354, + "Y": 6.9839687, + "Z": 0.07623291 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "DisableNavmesh": true, + "NextQuestId": 490 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/490_Shades of Sil'dih.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/490_Shades of Sil'dih.json new file mode 100644 index 00000000..c8403533 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/490_Shades of Sil'dih.json @@ -0,0 +1,104 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1010708, + "Position": { + "X": -70.237305, + "Y": 6.9839683, + "Z": 1.9073486 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -72.76394, + "Y": 6.9845715, + "Z": 6.476269 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo" + }, + { + "AethernetShortcut": [ + "[Ul'dah] Gladiators' Guild", + "[Ul'dah] Aetheryte Plaza" + ], + "DataId": 1001285, + "Position": { + "X": -68.77246, + "Y": 4.0411124, + "Z": -126.51257 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Alchemists' Guild" + ], + "DataId": 1011620, + "Position": { + "X": -118.69995, + "Y": 40, + "Z": 95.23157 + }, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1011672, + "Position": { + "X": -118.21167, + "Y": 40, + "Z": 92.11865 + }, + "StopDistance": 5, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "AethernetShortcut": [ + "[Ul'dah] Alchemists' Guild", + "[Ul'dah] Gate of the Sultana (Western Thanalan)" + ], + "DataId": 1011677, + "Position": { + "X": 363.54602, + "Y": 74.743355, + "Z": 171.12988 + }, + "TerritoryId": 140, + "InteractionType": "CompleteQuest", + "NextQuestId": 491 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/491_Sibling Strife.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/491_Sibling Strife.json new file mode 100644 index 00000000..cf1e140c --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/491_Sibling Strife.json @@ -0,0 +1,179 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1011677, + "Position": { + "X": 363.54602, + "Y": 74.743355, + "Z": 171.12988 + }, + "TerritoryId": 140, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Thaumaturges' Guild" + ], + "Position": { + "X": -171.53638, + "Y": 17.999998, + "Z": 66.511505 + }, + "TerritoryId": 130, + "InteractionType": "WalkTo" + }, + { + "DataId": 1011681, + "Position": { + "X": -182.29956, + "Y": 18, + "Z": 56.90088 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + }, + { + "DataId": 1003897, + "Position": { + "X": -195.45282, + "Y": 18, + "Z": 60.53247 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1001294, + "Position": { + "X": -214.22144, + "Y": 18.5, + "Z": 72.129395 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1001708, + "Position": { + "X": -250.3548, + "Y": 18, + "Z": 80.88806 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1011682, + "Position": { + "X": -200.763, + "Y": 17.999998, + "Z": 59.189697 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "AetheryteShortcut": "Western Thanalan - Horizon", + "DataId": 1011683, + "Position": { + "X": 76.8291, + "Y": 45, + "Z": -218.28033 + }, + "TerritoryId": 140, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -345.65482, + "Y": 23, + "Z": -352.02484 + }, + "TerritoryId": 140, + "InteractionType": "WalkTo", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Alchemists' Guild" + ], + "DataId": 1011675, + "Position": { + "X": -118.150635, + "Y": 40, + "Z": 96.29968 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "NextQuestId": 492 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/492_Beneath the Mask.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/492_Beneath the Mask.json new file mode 100644 index 00000000..a4977fd6 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/492_Beneath the Mask.json @@ -0,0 +1,225 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1011691, + "Position": { + "X": 40.878906, + "Y": 33.999985, + "Z": 27.939209 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 44.860275, + "Y": 34.02289, + "Z": -12.268097 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo" + }, + { + "DataId": 2005164, + "Position": { + "X": 43.07617, + "Y": 33.98181, + "Z": -13.962036 + }, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 45.576427, + "Y": 34, + "Z": -23.220316 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": 49.565746, + "Y": 33.999992, + "Z": -25.594622 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, + { + "DataId": 2005165, + "Position": { + "X": 60.16626, + "Y": 33.98181, + "Z": -21.316895 + }, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 53.15642, + "Y": 33.999992, + "Z": -25.133741 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": 62.437984, + "Y": 28.992012, + "Z": -34.336155 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, + { + "DataId": 2005166, + "Position": { + "X": 74.96753, + "Y": 28.976807, + "Z": -29.007446 + }, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 62.437984, + "Y": 28.992012, + "Z": -34.336155 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": 45.576427, + "Y": 34, + "Z": -23.220316 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, + { + "DataId": 1011697, + "Position": { + "X": 39.07837, + "Y": 33.999985, + "Z": 27.237305 + }, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1011693, + "Position": { + "X": 39.444458, + "Y": 34, + "Z": 29.984009 + }, + "StopDistance": 7, + "TerritoryId": 131, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1011694, + "Position": { + "X": 41.367188, + "Y": 33.999992, + "Z": 29.43457 + }, + "StopDistance": 7, + "TerritoryId": 131, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1011695, + "Position": { + "X": 41.916504, + "Y": 33.999992, + "Z": 30.044922 + }, + "StopDistance": 7, + "TerritoryId": 131, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1011697, + "Position": { + "X": 39.07837, + "Y": 33.999985, + "Z": 27.237305 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "NextQuestId": 493 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/493_Truths Untold.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/493_Truths Untold.json new file mode 100644 index 00000000..b8673317 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/493_Truths Untold.json @@ -0,0 +1,120 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1011699, + "Position": { + "X": 39.81079, + "Y": 34, + "Z": 30.22815 + }, + "StopDistance": 7, + "TerritoryId": 131, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1011707, + "Position": { + "X": 42.893066, + "Y": 33.99998, + "Z": 29.343018 + }, + "StopDistance": 7, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "AethernetShortcut": [ + "[Ul'dah] The Chamber of Rule", + "[Ul'dah] Sapphire Avenue Exchange" + ], + "Position": { + "X": 137.68585, + "Y": 3.9999998, + "Z": -58.555218 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo" + }, + { + "DataId": 1001679, + "Position": { + "X": 140.48975, + "Y": 4.0099983, + "Z": -59.80017 + }, + "StopDistance": 5, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "AethernetShortcut": [ + "[Ul'dah] Sapphire Avenue Exchange", + "[Ul'dah] The Chamber of Rule" + ], + "DataId": 1011712, + "Position": { + "X": -43.86969, + "Y": 30.000008, + "Z": 7.8583374 + }, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 22.47297, + "Y": 33.999996, + "Z": -40.833565 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": 33.41606, + "Y": 34, + "Z": -32.54854 + }, + "TerritoryId": 131, + "InteractionType": "WalkTo" + }, + { + "DataId": 1011707, + "Position": { + "X": 42.893066, + "Y": 33.99998, + "Z": 29.343018 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "NextQuestId": 502 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/502_Her Last Vow.json b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/502_Her Last Vow.json new file mode 100644 index 00000000..7f34150e --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Side Stories/Hildibrand/502_Her Last Vow.json @@ -0,0 +1,108 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "FalconTaterz", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1011707, + "Position": { + "X": 42.893066, + "Y": 33.99998, + "Z": 29.343018 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "AetheryteShortcut": "Central Thanalan - Black Brush Station", + "Fly": true, + "DataId": 1011714, + "Position": { + "X": -223.19379, + "Y": -3.7199955, + "Z": 52.32312 + }, + "TerritoryId": 141, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2005188, + "Position": { + "X": -314.07648, + "Y": -1.083435, + "Z": 43.9917 + }, + "TerritoryId": 141, + "InteractionType": "Say", + "ChatMessage": { + "Key": "TEXT_CHRHDB505_00502_SAYTODO_000_000" + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 159.84998, + "Y": 37.381317, + "Z": 174.60776 + }, + "TerritoryId": 153, + "InteractionType": "WalkTo", + "AetheryteShortcut": "South Shroud - Quarrymill", + "Fly": true + }, + { + "DataId": 1011722, + "Position": { + "X": 159.68555, + "Y": 37.432796, + "Z": 177.69128 + }, + "TerritoryId": 153, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "TerritoryId": 153, + "InteractionType": "Duty", + "ContentFinderConditionId": 85 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1011723, + "Position": { + "X": 141.06958, + "Y": 29.64365, + "Z": 173.72388 + }, + "TerritoryId": 153, + "InteractionType": "CompleteQuest", + "NextQuestId": 2226 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Trial Quests/1007_Primal Fear.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1007_Primal Fear.json new file mode 100644 index 00000000..3fab9f81 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1007_Primal Fear.json @@ -0,0 +1,49 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000423, + "Position": { + "X": 232.04382, + "Y": 1.999974, + "Z": 45.578613 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "TargetTerritoryId": 204 + }, + { + "DataId": 1003061, + "Position": { + "X": -0.015319824, + "Y": 0.500025, + "Z": -4.3793945 + }, + "TerritoryId": 204, + "InteractionType": "CompleteQuest", + "DisableNavmesh": true, + "NextQuestId": 1008 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Trial Quests/1008_Who Was That Man in Black.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1008_Who Was That Man in Black.json new file mode 100644 index 00000000..5722739b --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1008_Who Was That Man in Black.json @@ -0,0 +1,152 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1003061, + "Position": { + "X": -0.015319824, + "Y": 0.500025, + "Z": -4.3793945 + }, + "TerritoryId": 204, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2001215, + "Position": { + "X": 0.002457563, + "Y": 1.052062, + "Z": 9.820032 + }, + "TerritoryId": 204, + "InteractionType": "Interact", + "TargetTerritoryId": 132, + "SkipConditions": { + "StepIf": { + "NotInTerritory": [ + 204 + ] + } + } + }, + { + "DataId": 1000195, + "Position": { + "X": 197.4364, + "Y": 0.0026046988, + "Z": 57.114502 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1000156, + "Position": { + "X": 6.6376343, + "Y": 1.1442462, + "Z": -11.795227 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Gridania] Archers' Guild", + "[Gridania] Aetheryte Plaza" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + }, + { + "DataId": 1000122, + "Position": { + "X": 88.60913, + "Y": -8.685379, + "Z": 128.64868 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1000372, + "Position": { + "X": 39.53601, + "Y": -8.041565, + "Z": 112.13855 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000423, + "Position": { + "X": 232.04382, + "Y": 1.999974, + "Z": 45.578613 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "TargetTerritoryId": 204, + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ] + }, + { + "DataId": 1003061, + "Position": { + "X": -0.015319824, + "Y": 0.500025, + "Z": -4.3793945 + }, + "TerritoryId": 204, + "InteractionType": "CompleteQuest", + "DisableNavmesh": true, + "NextQuestId": 1009 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Trial Quests/1009_The Dark Divinity.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1009_The Dark Divinity.json new file mode 100644 index 00000000..924ce54d --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1009_The Dark Divinity.json @@ -0,0 +1,123 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1003061, + "Position": { + "X": -0.015319824, + "Y": 0.500025, + "Z": -4.3793945 + }, + "TerritoryId": 204, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1006584, + "Position": { + "X": 193.83533, + "Y": 7.8634253, + "Z": -57.724915 + }, + "TerritoryId": 153, + "InteractionType": "Interact", + "AetheryteShortcut": "South Shroud - Quarrymill" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 616.5126, + "Y": 22.329094, + "Z": 84.68576 + }, + "TerritoryId": 153, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2002241, + "Position": { + "X": 617.21216, + "Y": 23.605652, + "Z": 83.26843 + }, + "TerritoryId": 153, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 2198 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2002614, + "Position": { + "X": 617.21216, + "Y": 23.605652, + "Z": 83.26843 + }, + "TerritoryId": 153, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1006584, + "Position": { + "X": 193.83533, + "Y": 7.8634253, + "Z": -57.724915 + }, + "TerritoryId": 153, + "InteractionType": "Interact", + "AetheryteShortcut": "South Shroud - Quarrymill" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 210.56421, + "Y": 18.119999, + "Z": -21.370262 + }, + "TerritoryId": 153, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1006585, + "Position": { + "X": 209.3385, + "Y": 18.119999, + "Z": -21.957764 + }, + "TerritoryId": 153, + "InteractionType": "CompleteQuest", + "NextQuestId": 1012 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Trial Quests/1012_All You Wanted to Know about Odin.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1012_All You Wanted to Know about Odin.json new file mode 100644 index 00000000..d19bd5fb --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1012_All You Wanted to Know about Odin.json @@ -0,0 +1,64 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006585, + "Position": { + "X": 209.3385, + "Y": 18.119999, + "Z": -21.957764 + }, + "TerritoryId": 153, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "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", + "$": "Avoid walking around Waking Sands table" + }, + { + "DataId": 2001711, + "Position": { + "X": -480.9181, + "Y": 18.00103, + "Z": -386.862 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "TargetTerritoryId": 212 + }, + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "CompleteQuest", + "NextQuestId": 433 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Unlocks/Trials/1047_A Recurring Problem.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1047_A Recurring Problem.json similarity index 100% rename from QuestPaths/2.x - A Realm Reborn/Unlocks/Trials/1047_A Recurring Problem.json rename to QuestPaths/2.x - A Realm Reborn/Trial Quests/1047_A Recurring Problem.json diff --git a/QuestPaths/2.x - A Realm Reborn/Unlocks/Trials/1048_Ifrit Bleeds, We Can Kill It.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1048_Ifrit Bleeds, We Can Kill It.json similarity index 96% rename from QuestPaths/2.x - A Realm Reborn/Unlocks/Trials/1048_Ifrit Bleeds, We Can Kill It.json rename to QuestPaths/2.x - A Realm Reborn/Trial Quests/1048_Ifrit Bleeds, We Can Kill It.json index 2599943b..375a6d64 100644 --- a/QuestPaths/2.x - A Realm Reborn/Unlocks/Trials/1048_Ifrit Bleeds, We Can Kill It.json +++ b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1048_Ifrit Bleeds, We Can Kill It.json @@ -87,7 +87,8 @@ "TerritoryId": 146, "Mount": false, "InteractionType": "CompleteQuest", - "StopDistance": 5 + "StopDistance": 5, + "IgnoreDistanceToObject": true } ] } diff --git a/QuestPaths/2.x - A Realm Reborn/Unlocks/Trials/1157_In for Garuda Awakening.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1157_In for Garuda Awakening.json similarity index 100% rename from QuestPaths/2.x - A Realm Reborn/Unlocks/Trials/1157_In for Garuda Awakening.json rename to QuestPaths/2.x - A Realm Reborn/Trial Quests/1157_In for Garuda Awakening.json diff --git a/QuestPaths/2.x - A Realm Reborn/Unlocks/Trials/1158_In a Titan Spot.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1158_In a Titan Spot.json similarity index 100% rename from QuestPaths/2.x - A Realm Reborn/Unlocks/Trials/1158_In a Titan Spot.json rename to QuestPaths/2.x - A Realm Reborn/Trial Quests/1158_In a Titan Spot.json diff --git a/QuestPaths/2.x - A Realm Reborn/Trial Quests/1194_Primal Nature.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1194_Primal Nature.json new file mode 100644 index 00000000..5adea9a4 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1194_Primal Nature.json @@ -0,0 +1,38 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000168, + "Position": { + "X": -75.48645, + "Y": -0.5013741, + "Z": -5.081299 + }, + "TerritoryId": 132, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Gridania", + "NextQuestId": 1195 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Trial Quests/1195_Gale-force Warning.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1195_Gale-force Warning.json new file mode 100644 index 00000000..6aab4baa --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1195_Gale-force Warning.json @@ -0,0 +1,119 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1000168, + "Position": { + "X": -75.48645, + "Y": -0.5013741, + "Z": -5.081299 + }, + "TerritoryId": 132, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 643.84, + "Y": 287.48834, + "Z": 175.5028 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "Fly": true + }, + { + "DataId": 2003456, + "Position": { + "X": 649.7748, + "Y": 292.4391, + "Z": 175.34143 + }, + "TerritoryId": 155, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 155, + "InteractionType": "Duty", + "ContentFinderConditionId": 65 + } + ] + }, + { + "Sequence": 3 + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1000168, + "Position": { + "X": -75.48645, + "Y": -0.5013741, + "Z": -5.081299 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania" + } + ] + }, + { + "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", + "$": "Avoid walking around Waking Sands table" + }, + { + "DataId": 2001711, + "Position": { + "X": -480.9181, + "Y": 18.00103, + "Z": -386.862 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "TargetTerritoryId": 212 + }, + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "CompleteQuest", + "NextQuestId": 1196 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Trial Quests/1196_Quake Me Up Before You O'Ghomoro.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1196_Quake Me Up Before You O'Ghomoro.json new file mode 100644 index 00000000..357fa574 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1196_Quake Me Up Before You O'Ghomoro.json @@ -0,0 +1,193 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "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": 2, + "Steps": [ + { + "Position": { + "X": 71.55255, + "Y": 59.83099, + "Z": -516.4647 + }, + "TerritoryId": 180, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Outer La Noscea - Camp Overlook" + }, + { + "Position": { + "X": 111.7023, + "Y": 28.568699, + "Z": -611.7063 + }, + "TerritoryId": 180, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "Position": { + "X": 84.102905, + "Y": 28.170393, + "Z": -716.35504 + }, + "TerritoryId": 180, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "Position": { + "X": 161.06644, + "Y": 26.61216, + "Z": -712.6371 + }, + "TerritoryId": 180, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "Position": { + "X": 176.3917, + "Y": 29.076319, + "Z": -652.8805 + }, + "TerritoryId": 180, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "Position": { + "X": 143.06934, + "Y": 23.642702, + "Z": -656.43506 + }, + "TerritoryId": 180, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2003457, + "Position": { + "X": 144.39612, + "Y": 29.037842, + "Z": -622.4918 + }, + "TerritoryId": 180, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 180, + "InteractionType": "Duty", + "ContentFinderConditionId": 64 + } + ] + }, + { + "Sequence": 4 + }, + { + "Sequence": 5, + "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": 255, + "Steps": [ + { + "TerritoryId": 132, + "InteractionType": "UseItem", + "ItemId": 30362, + "TargetTerritoryId": 140 + }, + { + "Position": { + "X": -492.96475, + "Y": 20.999884, + "Z": -380.82272 + }, + "TerritoryId": 140, + "InteractionType": "WalkTo", + "$": "Avoid walking around Waking Sands table" + }, + { + "DataId": 2001711, + "Position": { + "X": -480.9181, + "Y": 18.00103, + "Z": -386.862 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "TargetTerritoryId": 212 + }, + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "CompleteQuest", + "NextQuestId": 1197 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Trial Quests/1197_Ifrit Ain't Broke.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1197_Ifrit Ain't Broke.json new file mode 100644 index 00000000..137084bf --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1197_Ifrit Ain't Broke.json @@ -0,0 +1,188 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -119.1183, + "Y": 3.7999938, + "Z": -104.33473 + }, + "TerritoryId": 130, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Ul'dah", + "$": "Ul'dah Aetheryte to Immortal Flames" + }, + { + "DataId": 1004576, + "Position": { + "X": -141.64954, + "Y": 4.1, + "Z": -114.67157 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -22.992174, + "Y": 31.881628, + "Z": -3.1655574 + }, + "TerritoryId": 146, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo" + }, + { + "Position": { + "X": 373.0123, + "Y": 46.21888, + "Z": -47.523537 + }, + "TerritoryId": 146, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "Position": { + "X": 500.2741, + "Y": 36.9815, + "Z": -153.72185 + }, + "TerritoryId": 146, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "Position": { + "X": 694.0748, + "Y": 4.267518, + "Z": -84.443855 + }, + "TerritoryId": 146, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2003458, + "Position": { + "X": 694.3617, + "Y": 7.9193726, + "Z": -80.1557 + }, + "TerritoryId": 146, + "Mount": false, + "InteractionType": "Interact", + "StopDistance": 5, + "IgnoreDistanceToObject": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 146, + "InteractionType": "Duty", + "ContentFinderConditionId": 63 + } + ] + }, + { + "Sequence": 4 + }, + { + "Sequence": 5, + "Steps": [ + { + "Position": { + "X": -119.1183, + "Y": 3.7999938, + "Z": -104.33473 + }, + "TerritoryId": 130, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Ul'dah", + "$": "Ul'dah Aetheryte to Immortal Flames" + }, + { + "DataId": 1004576, + "Position": { + "X": -141.64954, + "Y": 4.1, + "Z": -114.67157 + }, + "TerritoryId": 130, + "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", + "$": "Avoid walking around Waking Sands table" + }, + { + "DataId": 2001711, + "Position": { + "X": -480.9181, + "Y": 18.00103, + "Z": -386.862 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "TargetTerritoryId": 212 + }, + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "CompleteQuest", + "NextQuestId": 1198 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Trial Quests/1198_To Tussle with Gods.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1198_To Tussle with Gods.json new file mode 100644 index 00000000..c99c86cf --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1198_To Tussle with Gods.json @@ -0,0 +1,82 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 26.405773, + "Y": 29.49983, + "Z": -767.3998 + }, + "TerritoryId": 156, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Mor Dhona" + }, + { + "Position": { + "X": 25.629164, + "Y": 28.999998, + "Z": -823.2204 + }, + "TerritoryId": 156, + "InteractionType": "WalkTo" + }, + { + "DataId": 1001304, + "Position": { + "X": 25.589355, + "Y": 29, + "Z": -825.37573 + }, + "TerritoryId": 156, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 26.405773, + "Y": 29.49983, + "Z": -767.3998 + }, + "TerritoryId": 156, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1006951, + "Position": { + "X": 73.77734, + "Y": 33.066578, + "Z": -709.77344 + }, + "TerritoryId": 156, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Trial Quests/1309_Primal Focus.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1309_Primal Focus.json new file mode 100644 index 00000000..6e2decef --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1309_Primal Focus.json @@ -0,0 +1,80 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006951, + "Position": { + "X": 73.77734, + "Y": 33.066578, + "Z": -709.77344 + }, + "TerritoryId": 156, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "TerritoryId": 155, + "InteractionType": "Duty", + "ContentFinderConditionId": 65, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "TerritoryId": 180, + "InteractionType": "Duty", + "ContentFinderConditionId": 64, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "TerritoryId": 146, + "InteractionType": "Duty", + "ContentFinderConditionId": 63, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006951, + "Position": { + "X": 73.77734, + "Y": 33.066578, + "Z": -709.77344 + }, + "TerritoryId": 156, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Trial Quests/1412_The King Lives.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1412_The King Lives.json new file mode 100644 index 00000000..3f5cac7e --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1412_The King Lives.json @@ -0,0 +1,54 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1000168, + "Position": { + "X": -75.48645, + "Y": -0.5013741, + "Z": -5.081299 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1008544, + "Position": { + "X": -316.42633, + "Y": 12.050298, + "Z": -35.385742 + }, + "TerritoryId": 152, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "East Shroud - Hawthorne Hut", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Trial Quests/1413_Whorl of a Time.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1413_Whorl of a Time.json new file mode 100644 index 00000000..920b69f4 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1413_Whorl of a Time.json @@ -0,0 +1,58 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "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": 255, + "Steps": [ + { + "DataId": 1005409, + "Position": { + "X": 159.62463, + "Y": 8.974117, + "Z": 582.7573 + }, + "TerritoryId": 135, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Lower La Noscea - Moraby Drydocks", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Trial Quests/1530_Judgment Bolts and Lightning.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1530_Judgment Bolts and Lightning.json new file mode 100644 index 00000000..ec213216 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Trial Quests/1530_Judgment Bolts and Lightning.json @@ -0,0 +1,115 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1009294, + "Position": { + "X": -63.767517, + "Y": -1.7171676, + "Z": 11.673096 + }, + "TerritoryId": 132, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1000587, + "Position": { + "X": -7.248047, + "Y": -8.407776, + "Z": 268.23828 + }, + "TerritoryId": 152, + "InteractionType": "Interact", + "AetheryteShortcut": "East Shroud - Hawthorne Hut", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 198.12068, + "Y": -31.484615, + "Z": -218.4991 + }, + "TerritoryId": 152, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2004430, + "Position": { + "X": 198.2909, + "Y": -29.83142, + "Z": -220.44714 + }, + "TerritoryId": 152, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 152, + "InteractionType": "Duty", + "ContentFinderConditionId": 78 + } + ] + }, + { + "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", + "$": "Avoid walking around Waking Sands table" + }, + { + "DataId": 2001711, + "Position": { + "X": -480.9181, + "Y": 18.00103, + "Z": -386.862 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "TargetTerritoryId": 212 + }, + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Trial Quests/433_Fear and Odin in the Shroud.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/433_Fear and Odin in the Shroud.json new file mode 100644 index 00000000..10f664c8 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Trial Quests/433_Fear and Odin in the Shroud.json @@ -0,0 +1,64 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1009294, + "Position": { + "X": -63.767517, + "Y": -1.7171676, + "Z": 11.673096 + }, + "TerritoryId": 132, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Gridania" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1011250, + "Position": { + "X": 616.51013, + "Y": 22.291952, + "Z": 85.22156 + }, + "TerritoryId": 153, + "InteractionType": "Interact", + "AetheryteShortcut": "South Shroud - Quarrymill", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 153, + "InteractionType": "Duty", + "ContentFinderConditionId": 82 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1011250, + "Position": { + "X": 616.51013, + "Y": 22.291952, + "Z": 85.22156 + }, + "TerritoryId": 153, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Trial Quests/90_Drop Dead Shiva.json b/QuestPaths/2.x - A Realm Reborn/Trial Quests/90_Drop Dead Shiva.json new file mode 100644 index 00000000..3a0647c6 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Trial Quests/90_Drop Dead Shiva.json @@ -0,0 +1,166 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -424.22275, + "Y": 265.1, + "Z": -206.5006 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead" + }, + { + "DataId": 1006444, + "Position": { + "X": -432.9748, + "Y": 233.47266, + "Z": -199.6643 + }, + "TerritoryId": 155, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -431.37878, + "Y": 259.79306, + "Z": -194.97882 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "Position": { + "X": -423.87833, + "Y": 266.9849, + "Z": -205.68484 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Fly": false + }, + { + "DataId": 1010054, + "Position": { + "X": -916.6552, + "Y": 229.3692, + "Z": -6.4240723 + }, + "TerritoryId": 155, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 155, + "InteractionType": "Duty", + "ContentFinderConditionId": 80 + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -424.22275, + "Y": 265.1, + "Z": -206.5006 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "DataId": 1006444, + "Position": { + "X": -432.9748, + "Y": 233.47266, + "Z": -199.6643 + }, + "TerritoryId": 155, + "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", + "$": "Avoid walking around Waking Sands table" + }, + { + "DataId": 2001711, + "Position": { + "X": -480.9181, + "Y": 18.00103, + "Z": -386.862 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "TargetTerritoryId": 212 + }, + { + "DataId": 1007478, + "Position": { + "X": -2.822998, + "Y": -3.0000014, + "Z": -56.229553 + }, + "TerritoryId": 212, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Unlocks/Dungeons/1128_Shadows Uncast (Maelstrom).json b/QuestPaths/2.x - A Realm Reborn/Unlocks/Dungeons/1128_Shadows Uncast (Maelstrom).json index 19a06dad..69dff9a1 100644 --- a/QuestPaths/2.x - A Realm Reborn/Unlocks/Dungeons/1128_Shadows Uncast (Maelstrom).json +++ b/QuestPaths/2.x - A Realm Reborn/Unlocks/Dungeons/1128_Shadows Uncast (Maelstrom).json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 171 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/Unlocks/Dungeons/1129_Shadows Uncast (Twin Adder).json b/QuestPaths/2.x - A Realm Reborn/Unlocks/Dungeons/1129_Shadows Uncast (Twin Adder).json index e3084080..bb2006b8 100644 --- a/QuestPaths/2.x - A Realm Reborn/Unlocks/Dungeons/1129_Shadows Uncast (Twin Adder).json +++ b/QuestPaths/2.x - A Realm Reborn/Unlocks/Dungeons/1129_Shadows Uncast (Twin Adder).json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 171 - ], "QuestSequence": [ { "Sequence": 0, @@ -58,11 +55,7 @@ }, "TerritoryId": 132, "InteractionType": "CompleteQuest", - "AetheryteShortcut": "Limsa Lominsa", - "AethernetShortcut": [ - "[Limsa Lominsa] Aetheryte Plaza", - "[Limsa Lominsa] The Aftcastle" - ] + "AetheryteShortcut": "Gridania" } ] } diff --git a/QuestPaths/2.x - A Realm Reborn/Unlocks/Dungeons/1130_Shadows Uncast (Immortal Flames).json b/QuestPaths/2.x - A Realm Reborn/Unlocks/Dungeons/1130_Shadows Uncast (Immortal Flames).json index 90c6b7d5..76187f73 100644 --- a/QuestPaths/2.x - A Realm Reborn/Unlocks/Dungeons/1130_Shadows Uncast (Immortal Flames).json +++ b/QuestPaths/2.x - A Realm Reborn/Unlocks/Dungeons/1130_Shadows Uncast (Immortal Flames).json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 171 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/2.x - A Realm Reborn/Unlocks/Emotes/Harvest Dance/1425_Saw That One Coming.json b/QuestPaths/2.x - A Realm Reborn/Unlocks/Emotes/Harvest Dance/1425_Saw That One Coming.json new file mode 100644 index 00000000..101c13a3 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Unlocks/Emotes/Harvest Dance/1425_Saw That One Coming.json @@ -0,0 +1,249 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": 54.415092, + "Y": -8.047034, + "Z": 104.69259 + }, + "TerritoryId": 132, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Gridania", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "$": "We have get here first just to make sure we don't run into walls." + }, + { + "Position": { + "X": 37.72773, + "Y": -8, + "Z": 104.152405 + }, + "TerritoryId": 132, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Gridania", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "$": "Cool now go inside" + }, + { + "DataId": 1000375, + "Position": { + "X": 42.313232, + "Y": -8, + "Z": 96.54382 + }, + "TerritoryId": 132, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Gridania", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 40.8096, + "Y": -8, + "Z": 104.92199 + }, + "TerritoryId": 132, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Gridania", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "NearPosition": { + "Position": { + "X": -87.84625, + "Y": -3.3081923, + "Z": 41.70288 + }, + "TerritoryId": 132, + "MaximumDistance": 5 + } + } + } + }, + { + "DataId": 1007792, + "Position": { + "X": -87.84625, + "Y": -3.3081923, + "Z": 41.70288 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Gridania", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "$": "Interact with the gal now!" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1000153, + "Position": { + "X": -44.87683, + "Y": -1.2500024, + "Z": 56.839844 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Gridania", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "$": "Speak with the man now!" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1007795, + "Position": { + "X": 28.94629, + "Y": 8.45142, + "Z": -96.421814 + }, + "TerritoryId": 133, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Leatherworkers' Guild & Shaded Bower" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "$": "Give the First kid his present", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1007794, + "Position": { + "X": -124.864624, + "Y": 6.567382, + "Z": -120.74469 + }, + "TerritoryId": 133, + "InteractionType": "Interact", + "StopDistance": 5, + "AethernetShortcut": [ + "[Gridania] Leatherworkers' Guild & Shaded Bower", + "[Gridania] Mih Khetto's Amphitheatre" + ], + "$": "Give the second kid his present.", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1007793, + "Position": { + "X": -143.3891, + "Y": 4.123518, + "Z": -29.312622 + }, + "TerritoryId": 133, + "InteractionType": "Interact", + "StopDistance": 5, + "AethernetShortcut": [ + "[Gridania] Mih Khetto's Amphitheatre", + "[Gridania] Conjurers' Guild" + ], + "$": "Give the third kid his present.", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": -128.09769, + "Y": 5.6480865, + "Z": -36.499104 + }, + "TerritoryId": 133, + "InteractionType": "WalkTo" + }, + { + "DataId": 1007792, + "Position": { + "X": -87.84625, + "Y": -3.3081923, + "Z": 41.70288 + }, + "TerritoryId": 132, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Conjurers' Guild", + "[Gridania] Aetheryte Plaza" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Unlocks/Gold Saucer/434_It Could Happen to You.json b/QuestPaths/2.x - A Realm Reborn/Unlocks/Gold Saucer/434_It Could Happen to You.json new file mode 100644 index 00000000..5605d082 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Unlocks/Gold Saucer/434_It Could Happen to You.json @@ -0,0 +1,48 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1011565, + "Position": { + "X": -78.8739, + "Y": 4, + "Z": -110.429565 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1004433, + "Position": { + "X": -23.605713, + "Y": 83.19999, + "Z": -2.3041382 + }, + "TerritoryId": 130, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Airship Landing" + ], + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_SUBGSC001_00434_Q1_000_000", + "Yes": true + } + ], + "NextQuestId": 435 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Unlocks/Gold Saucer/435_World of Wonders.json b/QuestPaths/2.x - A Realm Reborn/Unlocks/Gold Saucer/435_World of Wonders.json new file mode 100644 index 00000000..f6dce677 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Unlocks/Gold Saucer/435_World of Wonders.json @@ -0,0 +1,280 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": [ + "liza", + "JerryWester" + ], + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1011022, + "Position": { + "X": -38.895264, + "Y": -2.7930364E-06, + "Z": 97.33728 + }, + "StopDistance": 7, + "TerritoryId": 144, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "TerritoryId": 144, + "InteractionType": "AttuneAethernetShard", + "AethernetShard": "[Gold Saucer] Entrance & Card Squares" + }, + { + "DataId": 1010448, + "Position": { + "X": -54.00177, + "Y": 1.6000003, + "Z": 30.685791 + }, + "StopDistance": 5, + "TerritoryId": 144, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1011038, + "Position": { + "X": -58.884644, + "Y": 1.6000003, + "Z": 27.634033 + }, + "StopDistance": 5, + "TerritoryId": 144, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1010478, + "Position": { + "X": -99.19891, + "Y": -0.86297023, + "Z": 66.11731 + }, + "TerritoryId": 144, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1011044, + "Position": { + "X": -84.45868, + "Y": 3.7690625E-06, + "Z": 29.06836 + }, + "TerritoryId": 144, + "InteractionType": "Interact", + "TargetTerritoryId": 388 + }, + { + "TerritoryId": 388, + "InteractionType": "AttuneAethernetShard", + "AethernetShard": "[Gold Saucer] Minion Square" + }, + { + "TerritoryId": 388, + "InteractionType": "AttuneAethernetShard", + "AethernetShard": "[Gold Saucer] Chocobo Square" + }, + { + "TerritoryId": 388, + "InteractionType": "None", + "AethernetShortcut": [ + "[Gold Saucer] Chocobo Square", + "[Gold Saucer] Entrance & Card Squares" + ] + }, + { + "TerritoryId": 144, + "InteractionType": "AttuneAetheryte", + "Aetheryte": "Gold Saucer", + "DelaySecondsAtStart": 3 + }, + { + "DataId": 1011080, + "Position": { + "X": 21.530457, + "Y": 3.9997296, + "Z": 39.902344 + }, + "TerritoryId": 144, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "Position": { + "X": 12.5078335, + "Y": 4.1552944, + "Z": 45.718685 + }, + "TerritoryId": 144, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": 12.60962, + "Y": 4.2181597, + "Z": 49.651253 + } + } + }, + { + "TerritoryId": 144, + "InteractionType": "AttuneAethernetShard", + "AethernetShard": "[Gold Saucer] Wonder Square West", + "DelaySecondsAtStart": 3 + }, + { + "TerritoryId": 144, + "InteractionType": "AttuneAethernetShard", + "AethernetShard": "[Gold Saucer] Wonder Square East" + }, + { + "TerritoryId": 144, + "InteractionType": "None", + "AethernetShortcut": [ + "[Gold Saucer] Wonder Square East", + "[Gold Saucer] Aetheryte Plaza" + ] + }, + { + "TerritoryId": 144, + "InteractionType": "AttuneAethernetShard", + "AethernetShard": "[Gold Saucer] Event Square", + "DelaySecondsAtStart": 3 + }, + { + "Position": { + "X": 89.128395, + "Y": -5.000001, + "Z": -66.6124 + }, + "StopDistance": 0.5, + "TerritoryId": 144, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": 85.47148, + "Y": -4.7818403, + "Z": -63.892 + }, + "DelaySeconds": 0.1 + } + }, + { + "TerritoryId": 144, + "InteractionType": "AttuneAethernetShard", + "AethernetShard": "[Gold Saucer] Cactpot Board", + "DelaySecondsAtStart": 3 + }, + { + "Position": { + "X": 111.36922, + "Y": 13.000123, + "Z": -24.209782 + }, + "TerritoryId": 144, + "InteractionType": "WalkTo" + }, + { + "DataId": 1011079, + "Position": { + "X": 125.078125, + "Y": 13.000635, + "Z": -13.778931 + }, + "StopDistance": 4, + "TerritoryId": 144, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "Position": { + "X": 111.36922, + "Y": 13.000123, + "Z": -24.209782 + }, + "TerritoryId": 144, + "InteractionType": "WalkTo" + }, + { + "TerritoryId": 144, + "InteractionType": "None", + "AethernetShortcut": [ + "[Gold Saucer] Cactpot Board", + "[Gold Saucer] Aetheryte Plaza" + ] + }, + { + "DataId": 1011084, + "Position": { + "X": -12.527649, + "Y": 3.2546434, + "Z": -73.16705 + }, + "TerritoryId": 144, + "InteractionType": "Interact", + "DelaySecondsAtStart": 3 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "TerritoryId": 144, + "InteractionType": "AttuneAethernetShard", + "AethernetShard": "[Gold Saucer] Round Square" + }, + { + "TerritoryId": 144, + "InteractionType": "None", + "AethernetShortcut": [ + "[Gold Saucer] Round Square", + "[Gold Saucer] Entrance & Card Squares" + ] + }, + { + "DataId": 1010448, + "Position": { + "X": -54.00177, + "Y": 1.6000003, + "Z": 30.685791 + }, + "StopDistance": 5, + "TerritoryId": 144, + "InteractionType": "CompleteQuest", + "DelaySecondsAtStart": 3 + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Unlocks/Misc/1432_An Ill-conceived Venture (Gridania).json b/QuestPaths/2.x - A Realm Reborn/Unlocks/Misc/1432_An Ill-conceived Venture (Gridania).json new file mode 100644 index 00000000..b6aed8bc --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Unlocks/Misc/1432_An Ill-conceived Venture (Gridania).json @@ -0,0 +1,112 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1008950, + "Position": { + "X": 29.19043, + "Y": -1.4123198, + "Z": 52.658813 + }, + "TerritoryId": 132, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Gridania", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "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" + ], + "SkipConditions": { + "StepIf": { + "AetheryteUnlocked": "East Shroud - Hawthorne Hut" + } + } + }, + { + "TerritoryId": 152, + "InteractionType": "AttuneAetheryte", + "Aetheryte": "East Shroud - Hawthorne Hut", + "SkipConditions": { + "StepIf": { + "AetheryteUnlocked": "East Shroud - Hawthorne Hut" + } + } + }, + { + "Position": { + "X": -53.214554, + "Y": -8.980761, + "Z": 297.15152 + }, + "TerritoryId": 152, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 12 + ], + "AetheryteShortcut": "East Shroud - Hawthorne Hut", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "DataId": 1008951, + "Position": { + "X": -51.651794, + "Y": -8.992504, + "Z": 296.9253 + }, + "TerritoryId": 152, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1000233, + "Position": { + "X": 168.65796, + "Y": 15.5, + "Z": -95.99457 + }, + "StopDistance": 0.5, + "TerritoryId": 133, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Leatherworkers' Guild & Shaded Bower" + ] + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Unlocks/Misc/1433_An Ill-conceived Venture (Limsa).json b/QuestPaths/2.x - A Realm Reborn/Unlocks/Misc/1433_An Ill-conceived Venture (Limsa).json new file mode 100644 index 00000000..f8038faf --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Unlocks/Misc/1433_An Ill-conceived Venture (Limsa).json @@ -0,0 +1,72 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1005412, + "Position": { + "X": -108.14075, + "Y": 18.000334, + "Z": -0.22894287 + }, + "TerritoryId": 129, + "AetheryteShortcut": "Limsa Lominsa", + "InteractionType": "AcceptQuest", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 248.49304, + "Y": -11.838913, + "Z": 97.45935 + }, + "TerritoryId": 138, + "InteractionType": "Combat", + "AetheryteShortcut": "Western La Noscea - Aleport", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 397 + ] + }, + { + "DataId": 1005413, + "Position": { + "X": 248.49304, + "Y": -11.838913, + "Z": 97.45935 + }, + "TerritoryId": 138, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1003275, + "Position": { + "X": -147.1123, + "Y": 18.2, + "Z": 14.358704 + }, + "TerritoryId": 129, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Limsa Lominsa" + } + ] + } + ] +} diff --git a/QuestPaths/2.x - A Realm Reborn/Unlocks/Misc/1434_An Ill-conceived Venture (Ul'dah).json b/QuestPaths/2.x - A Realm Reborn/Unlocks/Misc/1434_An Ill-conceived Venture (Ul'dah).json new file mode 100644 index 00000000..608541e7 --- /dev/null +++ b/QuestPaths/2.x - A Realm Reborn/Unlocks/Misc/1434_An Ill-conceived Venture (Ul'dah).json @@ -0,0 +1,77 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1008798, + "Position": { + "X": -93.06476, + "Y": 4, + "Z": -124.712036 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -240.09776, + "Y": -37.803402, + "Z": 105.18645 + }, + "StopDistance": 0.5, + "TerritoryId": 145, + "InteractionType": "Combat", + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 138 + ] + }, + { + "DataId": 1008799, + "Position": { + "X": -237.72034, + "Y": -37.77224, + "Z": 103.4104 + }, + "TerritoryId": 145, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1001963, + "Position": { + "X": 106.06543, + "Y": 4.642026, + "Z": -72.007385 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Sapphire Avenue Exchange" + ] + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Aether Currents/The Churning Mists/1828_Hide Your Moogles.json b/QuestPaths/3.x - Heavensward/Aether Currents/The Churning Mists/1828_Hide Your Moogles.json index 7d7043cf..be32d328 100644 --- a/QuestPaths/3.x - Heavensward/Aether Currents/The Churning Mists/1828_Hide Your Moogles.json +++ b/QuestPaths/3.x - Heavensward/Aether Currents/The Churning Mists/1828_Hide Your Moogles.json @@ -196,6 +196,17 @@ { "Sequence": 255, "Steps": [ + { + "Position": { + "X": -465.66104, + "Y": 43.041187, + "Z": 380.90747 + }, + "TerritoryId": 400, + "InteractionType": "WalkTo", + "Mount": true, + "DisableNavmesh": true + }, { "DataId": 1013420, "Position": { @@ -204,8 +215,7 @@ "Z": 347.0968 }, "TerritoryId": 400, - "InteractionType": "CompleteQuest", - "DisableNavmesh": true + "InteractionType": "CompleteQuest" } ] } diff --git a/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Forelands/1771_Some Bad News.json b/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Forelands/1771_Some Bad News.json index c584f07b..e3a5e7b5 100644 --- a/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Forelands/1771_Some Bad News.json +++ b/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Forelands/1771_Some Bad News.json @@ -111,6 +111,7 @@ }, "TerritoryId": 398, "InteractionType": "WalkTo", + "Mount": true, "SkipConditions": { "StepIf": { "CompletionQuestVariablesFlags": [ diff --git a/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Forelands/1790_Stolen Munitions.json b/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Forelands/1790_Stolen Munitions.json index 5e217fc9..17d022f2 100644 --- a/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Forelands/1790_Stolen Munitions.json +++ b/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Forelands/1790_Stolen Munitions.json @@ -20,6 +20,15 @@ { "Sequence": 1, "Steps": [ + { + "Position": { + "X": 67.682434, + "Y": -49.685223, + "Z": -148.21802 + }, + "TerritoryId": 398, + "InteractionType": "WalkTo" + }, { "DataId": 4001, "Position": { diff --git a/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Forelands/1797_The Hunter Becomes the Kweh.json b/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Forelands/1797_The Hunter Becomes the Kweh.json index 2deff7b9..1ccc2ef4 100644 --- a/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Forelands/1797_The Hunter Becomes the Kweh.json +++ b/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Forelands/1797_The Hunter Becomes the Kweh.json @@ -118,6 +118,7 @@ }, "TerritoryId": 398, "InteractionType": "WalkTo", + "Mount": true, "SkipConditions": { "StepIf": { "CompletionQuestVariablesFlags": [ diff --git a/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Forelands/1802_A Lesson in Humility.json b/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Forelands/1802_A Lesson in Humility.json index 2c5c6b23..fd7ed9c5 100644 --- a/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Forelands/1802_A Lesson in Humility.json +++ b/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Forelands/1802_A Lesson in Humility.json @@ -152,7 +152,8 @@ "Z": 22.9953 }, "TerritoryId": 398, - "InteractionType": "CompleteQuest" + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" } ] } diff --git a/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Hinterlands/1945_Ebb and Aetherflow.json b/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Hinterlands/1945_Ebb and Aetherflow.json index 64cbba1e..1d32b15e 100644 --- a/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Hinterlands/1945_Ebb and Aetherflow.json +++ b/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Hinterlands/1945_Ebb and Aetherflow.json @@ -98,6 +98,7 @@ "Y": 205.6815, "Z": 31.631958 }, + "StopDistance": 5, "TerritoryId": 478, "InteractionType": "CompleteQuest", "AetheryteShortcut": "Idyllshire" diff --git a/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Hinterlands/1963_Taking Stock.json b/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Hinterlands/1963_Taking Stock.json index b67d5cd7..848be8ee 100644 --- a/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Hinterlands/1963_Taking Stock.json +++ b/QuestPaths/3.x - Heavensward/Aether Currents/The Dravanian Hinterlands/1963_Taking Stock.json @@ -30,6 +30,17 @@ "InteractionType": "WalkTo", "TargetTerritoryId": 399 }, + { + "DataId": 2006210, + "Position": { + "X": -487.48004, + "Y": 144.64026, + "Z": -285.359 + }, + "TerritoryId": 399, + "InteractionType": "AttuneAetherCurrent", + "AetherCurrentId": 2818088 + }, { "DataId": 1013651, "Position": { @@ -61,17 +72,14 @@ "Steps": [ { "Position": { - "X": -403.42465, - "Y": 154.8542, - "Z": 82.59637 + "X": -346.407, + "Y": 152.32855, + "Z": 86.98739 }, "TerritoryId": 399, - "InteractionType": "Combat", - "EnemySpawnType": "AutoOnEnterArea", - "KillEnemyDataIds": [ - 5042 - ], - "CombatDelaySecondsAtStart": 1 + "InteractionType": "WalkTo", + "Mount": false, + "Sprint": false }, { "DataId": 2005885, @@ -81,7 +89,8 @@ "Z": 82.84119 }, "TerritoryId": 399, - "InteractionType": "Interact" + "InteractionType": "Interact", + "DelaySecondsAtStart": 5 } ] }, diff --git a/QuestPaths/3.x - Heavensward/Aether Currents/The Sea of Clouds/1909_Sleepless in Ok' Zundu.json b/QuestPaths/3.x - Heavensward/Aether Currents/The Sea of Clouds/1909_Sleepless in Ok' Zundu.json index e6fd0f6c..ef0f8a4a 100644 --- a/QuestPaths/3.x - Heavensward/Aether Currents/The Sea of Clouds/1909_Sleepless in Ok' Zundu.json +++ b/QuestPaths/3.x - Heavensward/Aether Currents/The Sea of Clouds/1909_Sleepless in Ok' Zundu.json @@ -20,6 +20,15 @@ { "Sequence": 1, "Steps": [ + { + "Position": { + "X": -44.83911, + "Y": -1.6023016, + "Z": -655.73804 + }, + "TerritoryId": 401, + "InteractionType": "WalkTo" + }, { "DataId": 2005824, "Position": { diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2171_Veni, Vundu, Vici.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2171_Veni, Vundu, Vici.json new file mode 100644 index 00000000..f29907ea --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2171_Veni, Vundu, Vici.json @@ -0,0 +1,91 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2006639, + "Position": { + "X": -270.3136, + "Y": -13.962036, + "Z": -635.2484 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006642, + "Position": { + "X": -245.41089, + "Y": -13.229614, + "Z": -608.2704 + }, + "TerritoryId": 401, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5236], + "Fly": true + }, + { + "DataId": 2006640, + "Position": { + "X": -82.230896, + "Y": -10.727112, + "Z": -637.90344 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006641, + "Position": { + "X": -24.765442, + "Y": 5.3253784, + "Z": -657.70966 + }, + "TerritoryId": 401, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5236], + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2172_Pussyfooting About.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2172_Pussyfooting About.json new file mode 100644 index 00000000..7fd649f6 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2172_Pussyfooting About.json @@ -0,0 +1,110 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2006645, + "Position": { + "X": -473.10602, + "Y": -56.01587, + "Z": -624.1398 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006644, + "Position": { + "X": -365.92664, + "Y": -57.053528, + "Z": -579.553 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006643, + "Position": { + "X": -381.9486, + "Y": -56.50421, + "Z": -521.8433 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1012056, + "Position": { + "X": -658.89984, + "Y": -127.78361, + "Z": 622.98 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "AetheryteShortcut": "The Sea of Clouds - Camp Cloudtop", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2182_Flight of the Midges.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2182_Flight of the Midges.json new file mode 100644 index 00000000..3ad2f847 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2182_Flight of the Midges.json @@ -0,0 +1,120 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016091, + "Position": { + "X": -804.25726, + "Y": -133.2695, + "Z": -390.89038 + }, + "TerritoryId": 401, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1016093, + "Position": { + "X": -776.0281, + "Y": -133.35559, + "Z": -414.32825 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": -850.9607, + "Y": 2.3374987, + "Z": -234.1339 + }, + "TerritoryId": 401, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1016222, + "Position": { + "X": -853.8186, + "Y": 7.7667847, + "Z": -223.92621 + }, + "TerritoryId": 401, + "InteractionType": "Action", + "Action": "Buffet (Sanuwa)", + "Fly": true + }, + { + "DataId": 1016221, + "Position": { + "X": -576.40955, + "Y": -51.59082, + "Z": -543.8773 + }, + "TerritoryId": 401, + "InteractionType": "Action", + "Action": "Buffet (Sanuwa)", + "Fly": true + }, + { + "DataId": 1016220, + "Position": { + "X": -455.7718, + "Y": -20.828613, + "Z": -610.8644 + }, + "TerritoryId": 401, + "InteractionType": "Action", + "Action": "Buffet (Sanuwa)", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016091, + "Position": { + "X": -804.25726, + "Y": -133.2695, + "Z": -390.89038 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2183_Fishing in Troubled Waters.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2183_Fishing in Troubled Waters.json new file mode 100644 index 00000000..68dd1ece --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2183_Fishing in Troubled Waters.json @@ -0,0 +1,96 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016090, + "Position": { + "X": -836.51483, + "Y": -133.26949, + "Z": -386.61786 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 833.7674, + "Y": -97.81962, + "Z": -735.3544 + }, + "TerritoryId": 401, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1016223, + "Position": { + "X": 834.37854, + "Y": -97.83405, + "Z": -738.18567 + }, + "TerritoryId": 401, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5239] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1016223, + "Position": { + "X": 834.37854, + "Y": -97.83405, + "Z": -738.18567 + }, + "TerritoryId": 401, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016090, + "Position": { + "X": -836.51483, + "Y": -133.26949, + "Z": -386.61786 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2184_Reeling in the Vundu.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2184_Reeling in the Vundu.json new file mode 100644 index 00000000..0ce28316 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2184_Reeling in the Vundu.json @@ -0,0 +1,99 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016090, + "Position": { + "X": -836.51483, + "Y": -133.26949, + "Z": -386.61786 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1016093, + "Position": { + "X": -776.0281, + "Y": -133.35559, + "Z": -414.32825 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1016227, + "Position": { + "X": 473.1975, + "Y": -98.03464, + "Z": -527.7333 + }, + "TerritoryId": 401, + "InteractionType": "Action", + "Action": "Buffet (Sanuwa)", + "Fly": true + }, + { + "DataId": 1016226, + "Position": { + "X": 710.9331, + "Y": -98.032555, + "Z": -741.0239 + }, + "TerritoryId": 401, + "InteractionType": "Action", + "Action": "Buffet (Sanuwa)", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016090, + "Position": { + "X": -836.51483, + "Y": -133.26949, + "Z": -386.61786 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2185_Nailed Down.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2185_Nailed Down.json new file mode 100644 index 00000000..0cb06ebf --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2185_Nailed Down.json @@ -0,0 +1,119 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016092, + "Position": { + "X": -792.6299, + "Y": -133.32184, + "Z": -425.5589 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2006676, + "Position": { + "X": -717.0062, + "Y": -13.901062, + "Z": -101.487854 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true, + "RequiredQuestVariables": [null, null, [16], null, null, null] + }, + { + "DataId": 2006762, + "Position": { + "X": -781.52136, + "Y": -13.931519, + "Z": -114.30542 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true, + "RequiredQuestVariables": [null, null, [32], null, null, null] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2006675, + "Position": { + "X": -642.298, + "Y": -207.29382, + "Z": 211.10852 + }, + "TerritoryId": 401, + "InteractionType": "Combat", + "EnemySpawnType": "AfterItemUse", + "ItemId": 2001912, + "KillEnemyDataIds": [5240], + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1012054, + "Position": { + "X": -640.1007, + "Y": -119.56208, + "Z": 469.5963 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "The Sea of Clouds - Camp Cloudtop" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016092, + "Position": { + "X": -792.6299, + "Y": -133.32184, + "Z": -425.5589 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2186_The House That Ginu Built.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2186_The House That Ginu Built.json new file mode 100644 index 00000000..61adcd39 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2186_The House That Ginu Built.json @@ -0,0 +1,85 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016092, + "Position": { + "X": -792.6299, + "Y": -133.32184, + "Z": -425.5589 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2006677, + "Position": { + "X": 117.96753, + "Y": 12.25293, + "Z": -412.92444 + }, + "TerritoryId": 401, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5241], + "Fly": true + }, + { + "DataId": 2006678, + "Position": { + "X": 160.54016, + "Y": 11.856201, + "Z": -507.65244 + }, + "TerritoryId": 401, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5241], + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016092, + "Position": { + "X": -792.6299, + "Y": -133.32184, + "Z": -425.5589 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2187_A Bone to Pick.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2187_A Bone to Pick.json new file mode 100644 index 00000000..d21382b9 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2187_A Bone to Pick.json @@ -0,0 +1,91 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016092, + "Position": { + "X": -792.6299, + "Y": -133.32184, + "Z": -425.5589 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2006679, + "Position": { + "X": -401.175, + "Y": -202.65509, + "Z": 432.39478 + }, + "TerritoryId": 401, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5242], + "AetheryteShortcut": "The Sea of Clouds - Camp Cloudtop", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2006680, + "Position": { + "X": -280.8728, + "Y": -202.01422, + "Z": 390.7987 + }, + "TerritoryId": 401, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5242], + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016092, + "Position": { + "X": -792.6299, + "Y": -133.32184, + "Z": -425.5589 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2188_A Hut to Dye For.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2188_A Hut to Dye For.json new file mode 100644 index 00000000..935cc0a3 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2188_A Hut to Dye For.json @@ -0,0 +1,112 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016092, + "Position": { + "X": -792.6299, + "Y": -133.32184, + "Z": -425.5589 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2006682, + "Position": { + "X": 25.711426, + "Y": 150.46924, + "Z": -133.56226 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006681, + "Position": { + "X": 237.07935, + "Y": 163.95813, + "Z": -46.433228 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + }, + { + "Position": { + "X": 237.02913, + "Y": 169.13622, + "Z": -44.168194 + }, + "TerritoryId": 401, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2006683, + "Position": { + "X": 332.5094, + "Y": 106.79785, + "Z": -68.2536 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 317.41415, + "Y": 110.85538, + "Z": -34.527588 + }, + "TerritoryId": 401, + "InteractionType": "WalkTo", + "$": "Run away from the enemy to TP" + }, + { + "DataId": 1016092, + "Position": { + "X": -792.6299, + "Y": -133.32184, + "Z": -425.5589 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2189_Shady Premonitions.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2189_Shady Premonitions.json new file mode 100644 index 00000000..3f662fcb --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2189_Shady Premonitions.json @@ -0,0 +1,138 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016088, + "Position": { + "X": -818.143, + "Y": -129.93259, + "Z": -414.02307 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1016228, + "Position": { + "X": -547.7836, + "Y": -57.646603, + "Z": -549.76733 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2006684, + "Position": { + "X": -357.29004, + "Y": -56.565247, + "Z": -598.9929 + }, + "TerritoryId": 401, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5243], + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1016229, + "Position": { + "X": -369.31415, + "Y": -54.222214, + "Z": -605.3407 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 2006685, + "Position": { + "X": -107.07257, + "Y": -13.5043335, + "Z": -655.6039 + }, + "TerritoryId": 401, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5243], + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1016230, + "Position": { + "X": -114.85474, + "Y": -13.978999, + "Z": -652.8878 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016088, + "Position": { + "X": -818.143, + "Y": -129.93259, + "Z": -414.02307 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu" + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2190_Pestered Ancestors.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2190_Pestered Ancestors.json new file mode 100644 index 00000000..b41fc640 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2190_Pestered Ancestors.json @@ -0,0 +1,86 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016088, + "Position": { + "X": -818.143, + "Y": -129.93259, + "Z": -414.02307 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2006707, + "Position": { + "X": 72.92273, + "Y": -88.39557, + "Z": 428.82422 + }, + "TerritoryId": 401, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5244], + "Fly": true, + "AetheryteShortcut": "The Sea of Clouds - Camp Cloudtop" + }, + { + "DataId": 2006686, + "Position": { + "X": 167.58984, + "Y": -97.428955, + "Z": 455.71057 + }, + "TerritoryId": 401, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5244], + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016088, + "Position": { + "X": -818.143, + "Y": -129.93259, + "Z": -414.02307 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu" + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2191_Smooth as Silk, Cool as Air.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2191_Smooth as Silk, Cool as Air.json new file mode 100644 index 00000000..4471cd3c --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2191_Smooth as Silk, Cool as Air.json @@ -0,0 +1,104 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016088, + "Position": { + "X": -818.143, + "Y": -129.93259, + "Z": -414.02307 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2006690, + "Position": { + "X": -857.6333, + "Y": 4.6539917, + "Z": -218.67706 + }, + "TerritoryId": 401, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5246], + "Fly": true + }, + { + "DataId": 2006689, + "Position": { + "X": -830.3197, + "Y": -14.358765, + "Z": -131.82275 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006687, + "Position": { + "X": -553.97876, + "Y": -58.42682, + "Z": -271.10706 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006688, + "Position": { + "X": -715.1446, + "Y": -58.640503, + "Z": -342.30566 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016088, + "Position": { + "X": -818.143, + "Y": -129.93259, + "Z": -414.02307 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2192_Gaelicat's Out of the Bag.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2192_Gaelicat's Out of the Bag.json new file mode 100644 index 00000000..62988c55 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2192_Gaelicat's Out of the Bag.json @@ -0,0 +1,120 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016092, + "Position": { + "X": -792.6299, + "Y": -133.32184, + "Z": -425.5589 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1016375, + "Position": { + "X": -627.89355, + "Y": -149.95285, + "Z": 480.15564 + }, + "TerritoryId": 401, + "InteractionType": "UseItem", + "ItemId": 2001934, + "Fly": true, + "AetheryteShortcut": "The Sea of Clouds - Camp Cloudtop" + }, + { + "DataId": 1016232, + "Position": { + "X": -452.10956, + "Y": -187.396, + "Z": 734.18774 + }, + "TerritoryId": 401, + "InteractionType": "UseItem", + "ItemId": 2001934, + "Fly": true + }, + { + "DataId": 1016233, + "Position": { + "X": -359.823, + "Y": -184.95448, + "Z": 796.71924 + }, + "TerritoryId": 401, + "InteractionType": "UseItem", + "ItemId": 2001934, + "Fly": true + }, + { + "DataId": 1016374, + "Position": { + "X": -343.00757, + "Y": -161.8661, + "Z": 770.01587 + }, + "TerritoryId": 401, + "InteractionType": "UseItem", + "ItemId": 2001934, + "Fly": true + }, + { + "DataId": 1016231, + "Position": { + "X": -333.79114, + "Y": -184.97446, + "Z": 625.1162 + }, + "TerritoryId": 401, + "InteractionType": "UseItem", + "ItemId": 2001934, + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016092, + "Position": { + "X": -792.6299, + "Y": -133.32184, + "Z": -425.5589 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2193_Rotten to the Korrigan.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2193_Rotten to the Korrigan.json new file mode 100644 index 00000000..0d571b1c --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2193_Rotten to the Korrigan.json @@ -0,0 +1,104 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016091, + "Position": { + "X": -804.25726, + "Y": -133.2695, + "Z": -390.89038 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1016508, + "Position": { + "X": -261.8601, + "Y": -132.0669, + "Z": 388.66248 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "The Sea of Clouds - Camp Cloudtop" + }, + { + "DataId": 1016235, + "Position": { + "X": -229.48047, + "Y": -129.59497, + "Z": 418.44812 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 1016236, + "Position": { + "X": -196.2768, + "Y": -131.82275, + "Z": 333.9436 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 1016216, + "Position": { + "X": -253.62024, + "Y": -130.38837, + "Z": 340.3219 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016091, + "Position": { + "X": -804.25726, + "Y": -133.2695, + "Z": -390.89038 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu" + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2197_Dance Commander.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2197_Dance Commander.json new file mode 100644 index 00000000..fbbafa26 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2197_Dance Commander.json @@ -0,0 +1,116 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016088, + "Position": { + "X": -818.143, + "Y": -129.93259, + "Z": -414.02307 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 650.37317, + "Y": -41.15606, + "Z": -302.4378 + }, + "TerritoryId": 401, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1016362, + "Position": { + "X": 647.57764, + "Y": -41.156067, + "Z": -301.47253 + }, + "TerritoryId": 401, + "InteractionType": "Emote", + "Emote": "sundropdance" + }, + { + "DataId": 1016365, + "Position": { + "X": 682.36804, + "Y": -11.396843, + "Z": -400.6256 + }, + "TerritoryId": 401, + "InteractionType": "Emote", + "Emote": "sundropdance", + "Fly": true + }, + { + "DataId": 1016364, + "Position": { + "X": 799.9846, + "Y": -11.396843, + "Z": -416.98334 + }, + "TerritoryId": 401, + "InteractionType": "Emote", + "Emote": "sundropdance", + "Fly": true + }, + { + "DataId": 1016363, + "Position": { + "X": 776.9131, + "Y": -39.97968, + "Z": -540.24567 + }, + "TerritoryId": 401, + "InteractionType": "Emote", + "Emote": "sundropdance", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016088, + "Position": { + "X": -818.143, + "Y": -129.93259, + "Z": -414.02307 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2198_Electric Gunduloo.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2198_Electric Gunduloo.json new file mode 100644 index 00000000..e6d8e71b --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2198_Electric Gunduloo.json @@ -0,0 +1,107 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016088, + "Position": { + "X": -818.143, + "Y": -129.93259, + "Z": -414.02307 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1016241, + "Position": { + "X": -182.94049, + "Y": 213.612, + "Z": 204.57764 + }, + "TerritoryId": 401, + "InteractionType": "Emote", + "Emote": "sundropdance", + "Fly": true + }, + { + "Position": { + "X": -182.94049, + "Y": 213.612, + "Z": 204.57764 + }, + "TerritoryId": 401, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "KillEnemyDataIds": [5235], + "CombatDelaySecondsAtStart": 0 + }, + { + "DataId": 1016239, + "Position": { + "X": -64.683044, + "Y": 212.9267, + "Z": 101.33508 + }, + "TerritoryId": 401, + "InteractionType": "Emote", + "Emote": "sundropdance", + "Fly": true + }, + { + "DataId": 1016240, + "Position": { + "X": 233.23413, + "Y": 240.42369, + "Z": 118.30322 + }, + "TerritoryId": 401, + "InteractionType": "Emote", + "Emote": "sundropdance", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016088, + "Position": { + "X": -818.143, + "Y": -129.93259, + "Z": -414.02307 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2199_Wildwort and Sundrop.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2199_Wildwort and Sundrop.json new file mode 100644 index 00000000..31fe7005 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2199_Wildwort and Sundrop.json @@ -0,0 +1,103 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016088, + "Position": { + "X": -818.143, + "Y": -129.93259, + "Z": -414.02307 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2006708, + "Position": { + "X": -198.41309, + "Y": 93.55298, + "Z": -303.88342 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2006695, + "Position": { + "X": 111.46704, + "Y": -84.55023, + "Z": 429.83142 + }, + "TerritoryId": 401, + "InteractionType": "UseItem", + "ItemId": 2001927, + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2006696, + "Position": { + "X": 111.436646, + "Y": -83.024414, + "Z": 428.85486 + }, + "TerritoryId": 401, + "InteractionType": "Emote", + "Emote": "sundropdance" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016088, + "Position": { + "X": -818.143, + "Y": -129.93259, + "Z": -414.02307 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2200_Vanish, Vile Vundu.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2200_Vanish, Vile Vundu.json new file mode 100644 index 00000000..8750abea --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Dailies/2200_Vanish, Vile Vundu.json @@ -0,0 +1,121 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016089, + "Position": { + "X": -799.46594, + "Y": -133.2695, + "Z": -404.1352 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016088, + "Position": { + "X": -818.143, + "Y": -129.93259, + "Z": -414.02307 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1016093, + "Position": { + "X": -776.0281, + "Y": -133.35559, + "Z": -414.32825 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1016242, + "Position": { + "X": 284.19922, + "Y": 28.574171, + "Z": -636.3775 + }, + "TerritoryId": 401, + "InteractionType": "Action", + "Action": "Buffet (Sanuwa)", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1016378, + "Position": { + "X": 338.4298, + "Y": 31.483738, + "Z": -562.1882 + }, + "TerritoryId": 401, + "InteractionType": "Action", + "Action": "Buffet (Sanuwa)", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1016379, + "Position": { + "X": 501.27405, + "Y": 112.648964, + "Z": -182.97095 + }, + "TerritoryId": 401, + "InteractionType": "Action", + "Action": "Buffet (Sanuwa)", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016088, + "Position": { + "X": -818.143, + "Y": -129.93259, + "Z": -414.02307 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Story/2169_Sundrop the Beat.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Story/2169_Sundrop the Beat.json new file mode 100644 index 00000000..84b2521c --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Story/2169_Sundrop the Beat.json @@ -0,0 +1,173 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016087, + "Position": { + "X": -796.7498, + "Y": -133.2695, + "Z": -410.6966 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1012064, + "Position": { + "X": -542.7787, + "Y": -37.11544, + "Z": -386.7094 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1016174, + "Position": { + "X": -606.4088, + "Y": -51.071037, + "Z": -370.87054 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": -589.2831, + "Y": -1.0348412, + "Z": -340.14413 + }, + "TerritoryId": 401, + "InteractionType": "WalkTo", + "Fly": true, + "Land": true + }, + { + "Position": { + "X": -589.2831, + "Y": -1.0348412, + "Z": -340.14413 + }, + "TerritoryId": 401, + "InteractionType": "Emote", + "Emote": "dance", + "Mount": false + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1016174, + "Position": { + "X": -606.4088, + "Y": -51.071037, + "Z": -370.87054 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1016175, + "Position": { + "X": 657.557, + "Y": -125.6886, + "Z": 307.60657 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "Position": { + "X": 702.4233, + "Y": -60.78939, + "Z": 145.91805 + }, + "TerritoryId": 401, + "InteractionType": "WalkTo", + "Fly": true, + "Land": true + }, + { + "Position": { + "X": 702.4233, + "Y": -60.78939, + "Z": 145.91805 + }, + "TerritoryId": 401, + "InteractionType": "Emote", + "Emote": "dance", + "Mount": false + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1016175, + "Position": { + "X": 657.557, + "Y": -125.6886, + "Z": 307.60657 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016174, + "Position": { + "X": -606.4088, + "Y": -51.071037, + "Z": -370.87054 + }, + "TerritoryId": 401, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Story/2260_A Symbiotic Friendship.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Story/2260_A Symbiotic Friendship.json new file mode 100644 index 00000000..a2400d21 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vanu Vanu/Story/2260_A Symbiotic Friendship.json @@ -0,0 +1,37 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016802, + "Position": { + "X": 53.360718, + "Y": -48.000004, + "Z": -169.97028 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1011928, + "Position": { + "X": 73.19751, + "Y": -49.19563, + "Z": -139.05548 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2261_Getting the Shaft.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2261_Getting the Shaft.json new file mode 100644 index 00000000..a509b5de --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2261_Getting the Shaft.json @@ -0,0 +1,79 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2006883, + "Position": { + "X": 31.418213, + "Y": -65.32391, + "Z": 111.74182 + }, + "TerritoryId": 398, + "InteractionType": "Combat", + "Fly": true, + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5550] + }, + { + "DataId": 2006882, + "Position": { + "X": 307.05725, + "Y": -66.54462, + "Z": 163.43933 + }, + "TerritoryId": 398, + "InteractionType": "Combat", + "Fly": true, + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5550] + }, + { + "DataId": 2006881, + "Position": { + "X": 352.25452, + "Y": -51.07196, + "Z": -46.982605 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2262_Breath of Fresh Air.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2262_Breath of Fresh Air.json new file mode 100644 index 00000000..a1b358a6 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2262_Breath of Fresh Air.json @@ -0,0 +1,119 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2006886, + "Position": { + "X": 237.65918, + "Y": -71.45807, + "Z": 99.01575 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006885, + "Position": { + "X": 284.5349, + "Y": -67.61273, + "Z": 83.878784 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006884, + "Position": { + "X": 294.94165, + "Y": -68.92505, + "Z": 129.19812 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1011917, + "Position": { + "X": 535.30164, + "Y": -51.340645, + "Z": 65.293335 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather" + }, + { + "DataId": 1011922, + "Position": { + "X": 448.56934, + "Y": -51.141407, + "Z": 108.93408 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2263_Bugging the Bugs.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2263_Bugging the Bugs.json new file mode 100644 index 00000000..933aa250 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2263_Bugging the Bugs.json @@ -0,0 +1,116 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1017031, + "Position": { + "X": 74.20459, + "Y": -48.533592, + "Z": -171.12994 + }, + "TerritoryId": 398, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2006887, + "Position": { + "X": 523.4302, + "Y": -50.370117, + "Z": 90.86743 + }, + "TerritoryId": 398, + "InteractionType": "Action", + "Action": "Fumigate", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2006970, + "Position": { + "X": 517.4791, + "Y": -50.644714, + "Z": 89.00586 + }, + "TerritoryId": 398, + "InteractionType": "Action", + "Action": "Fumigate", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2006889, + "Position": { + "X": 689.7229, + "Y": -52.262207, + "Z": 62.088867 + }, + "TerritoryId": 398, + "InteractionType": "Action", + "Action": "Fumigate", + "Fly": true + }, + { + "DataId": 2006888, + "Position": { + "X": 586.1753, + "Y": -37.979797, + "Z": 257.3739 + }, + "TerritoryId": 398, + "InteractionType": "Action", + "Action": "Fumigate", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2264_Too Much to Bear.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2264_Too Much to Bear.json new file mode 100644 index 00000000..06661865 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2264_Too Much to Bear.json @@ -0,0 +1,80 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2006872, + "Position": { + "X": 333.82153, + "Y": -47.53192, + "Z": -331.53284 + }, + "TerritoryId": 398, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5546], + "Fly": true + }, + { + "DataId": 2006871, + "Position": { + "X": 559.71606, + "Y": -41.24518, + "Z": -333.1808 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006873, + "Position": { + "X": 707.7285, + "Y": -50.095398, + "Z": -151.47632 + }, + "TerritoryId": 398, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5546], + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2265_The Foodstuff of Champions.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2265_The Foodstuff of Champions.json new file mode 100644 index 00000000..1f84b37b --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2265_The Foodstuff of Champions.json @@ -0,0 +1,109 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2006897, + "Position": { + "X": 88.48706, + "Y": -123.43024, + "Z": 561.7914 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006899, + "Position": { + "X": 137.1023, + "Y": -120.01227, + "Z": 586.08374 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006898, + "Position": { + "X": 111.86377, + "Y": -119.035645, + "Z": 617.4868 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006894, + "Position": { + "X": 223.22424, + "Y": -123.6134, + "Z": 697.6272 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006892, + "Position": { + "X": 209.1554, + "Y": -123.12512, + "Z": 767.91016 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006893, + "Position": { + "X": 291.03528, + "Y": -119.40192, + "Z": 664.6676 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2266_A Long Shot.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2266_A Long Shot.json new file mode 100644 index 00000000..4d1ca779 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2266_A Long Shot.json @@ -0,0 +1,109 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2006903, + "Position": { + "X": 20.004517, + "Y": -84.00098, + "Z": 282.15454 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006904, + "Position": { + "X": 52.68933, + "Y": -100.572266, + "Z": 317.1283 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Mount": true + }, + { + "DataId": 2006905, + "Position": { + "X": 6.301941, + "Y": -100.206055, + "Z": 351.43042 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Mount": true + }, + { + "DataId": 2006902, + "Position": { + "X": -317.49445, + "Y": -80.55243, + "Z": 632.59326 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006901, + "Position": { + "X": -336.96503, + "Y": -80.55243, + "Z": 655.08496 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Mount": true + }, + { + "DataId": 2006900, + "Position": { + "X": -379.75128, + "Y": -75.21173, + "Z": 669.2759 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2267_Where the Silver Dew Grows.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2267_Where the Silver Dew Grows.json new file mode 100644 index 00000000..78bfc835 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2267_Where the Silver Dew Grows.json @@ -0,0 +1,91 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2006909, + "Position": { + "X": -124.37634, + "Y": -86.07617, + "Z": 763.6987 + }, + "TerritoryId": 398, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5548], + "Fly": true + }, + { + "DataId": 2006906, + "Position": { + "X": -178.51532, + "Y": -86.167725, + "Z": 775.845 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006908, + "Position": { + "X": -305.745, + "Y": -68.13159, + "Z": 812.7717 + }, + "TerritoryId": 398, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5548], + "Fly": true + }, + { + "DataId": 2006907, + "Position": { + "X": -303.36462, + "Y": -80.52191, + "Z": 734.15735 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2268_The Caelumtree Wine Spree.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2268_The Caelumtree Wine Spree.json new file mode 100644 index 00000000..f2ce7b2e --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2268_The Caelumtree Wine Spree.json @@ -0,0 +1,91 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2006913, + "Position": { + "X": 566.7964, + "Y": -20.553955, + "Z": -530.2052 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006914, + "Position": { + "X": 595.3917, + "Y": -20.187744, + "Z": -547.4785 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006912, + "Position": { + "X": 639.8259, + "Y": -19.60791, + "Z": -588.098 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016855, + "Position": { + "X": 74.906494, + "Y": -48, + "Z": -175.67712 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2272_Shoo Fly, Don't Bother Me.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2272_Shoo Fly, Don't Bother Me.json new file mode 100644 index 00000000..fc74eb4d --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2272_Shoo Fly, Don't Bother Me.json @@ -0,0 +1,96 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1017031, + "Position": { + "X": 74.20459, + "Y": -48.533592, + "Z": -171.12994 + }, + "TerritoryId": 398, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -190.26477, + "Y": -104.73892, + "Z": 512.932 + }, + "TerritoryId": 398, + "InteractionType": "Action", + "Action": "Fumigate", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": -13.443237, + "Y": -129.2623, + "Z": 712.21484 + }, + "TerritoryId": 398, + "InteractionType": "Action", + "Action": "Fumigate", + "Fly": true + }, + { + "Position": { + "X": 45.151367, + "Y": -132.12938, + "Z": 685.7556 + }, + "TerritoryId": 398, + "InteractionType": "Action", + "Action": "Fumigate", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2273_All about the Eggs.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2273_All about the Eggs.json new file mode 100644 index 00000000..21824e8a --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2273_All about the Eggs.json @@ -0,0 +1,72 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2006930, + "Position": { + "X": 510.3684, + "Y": -26.077698, + "Z": -592.3705 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2006931, + "Position": { + "X": 358.81592, + "Y": -51.98755, + "Z": -137.89581 + }, + "TerritoryId": 398, + "InteractionType": "Combat", + "EnemySpawnType": "AfterItemUse", + "ItemId": 2001963, + "KillEnemyDataIds": [5552], + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2274_Smells Like Trouble.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2274_Smells Like Trouble.json new file mode 100644 index 00000000..095c273c --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2274_Smells Like Trouble.json @@ -0,0 +1,124 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2006937, + "Position": { + "X": -42.282776, + "Y": -32.73065, + "Z": 183.30652 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006935, + "Position": { + "X": -46.189087, + "Y": -47.257202, + "Z": 241.93176 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006936, + "Position": { + "X": -83.57367, + "Y": -48.17273, + "Z": 231.89136 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006934, + "Position": { + "X": -105.02789, + "Y": -69.68799, + "Z": 350.63696 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006933, + "Position": { + "X": -80.03363, + "Y": -71.67163, + "Z": 412.46655 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006932, + "Position": { + "X": -155.41315, + "Y": -71.122375, + "Z": 387.28918 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016863, + "Position": { + "X": 67.948364, + "Y": -48.43746, + "Z": -168.23071 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2277_Fifty Shades of Yellow.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2277_Fifty Shades of Yellow.json new file mode 100644 index 00000000..1f83afd0 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2277_Fifty Shades of Yellow.json @@ -0,0 +1,118 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016872, + "Position": { + "X": -42.954163, + "Y": -33.573986, + "Z": -24.490784 + }, + "TerritoryId": 398, + "InteractionType": "Say", + "ChatMessage": { + "Key": "TEXT_BANGNA602_02277_SYSTEM_000_012" + }, + "Fly": true + }, + { + "DataId": 1016871, + "Position": { + "X": -113.38989, + "Y": -34.45324, + "Z": -206.65302 + }, + "TerritoryId": 398, + "InteractionType": "Say", + "ChatMessage": { + "Key": "TEXT_BANGNA602_02277_SYSTEM_000_012" + }, + "Fly": true + }, + { + "DataId": 1016873, + "Position": { + "X": -178.17963, + "Y": -35.40849, + "Z": -80.094604 + }, + "TerritoryId": 398, + "InteractionType": "Say", + "ChatMessage": { + "Key": "TEXT_BANGNA602_02277_SYSTEM_000_012" + }, + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1016874, + "Position": { + "X": -399.25232, + "Y": 96.070595, + "Z": -43.01526 + }, + "TerritoryId": 398, + "InteractionType": "Say", + "ChatMessage": { + "Key": "TEXT_BANGNA602_02277_SYSTEM_000_012" + }, + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1016874, + "Position": { + "X": -399.25232, + "Y": 96.070595, + "Z": -43.01526 + }, + "TerritoryId": 398, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2278_A Romp around the Foothills.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2278_A Romp around the Foothills.json new file mode 100644 index 00000000..5c5fa317 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2278_A Romp around the Foothills.json @@ -0,0 +1,117 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016875, + "Position": { + "X": -274.09784, + "Y": -22.971008, + "Z": 22.812195 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1016876, + "Position": { + "X": 148.48547, + "Y": 65.56322, + "Z": -644.09863 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1016877, + "Position": { + "X": 212.23767, + "Y": 52.205494, + "Z": -777.676 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1016878, + "Position": { + "X": 210.31506, + "Y": 59.655575, + "Z": -919.06616 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1016875, + "Position": { + "X": -274.09784, + "Y": -22.971008, + "Z": 22.812195 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2279_Neighborhood Squabbles.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2279_Neighborhood Squabbles.json new file mode 100644 index 00000000..e21d83f5 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2279_Neighborhood Squabbles.json @@ -0,0 +1,91 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2006945, + "Position": { + "X": 204.63867, + "Y": -106.43176, + "Z": 360.55542 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 2006947, + "Position": { + "X": 205.98145, + "Y": -109.544556, + "Z": 389.7306 + }, + "TerritoryId": 398, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5549], + "Fly": true + }, + { + "DataId": 2006948, + "Position": { + "X": 154.43652, + "Y": -112.50476, + "Z": 445.15137 + }, + "TerritoryId": 398, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [5549], + "Fly": true + }, + { + "DataId": 2006946, + "Position": { + "X": 153.0022, + "Y": -86.289795, + "Z": 418.44812 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2280_Not for the Faint of Heart.json b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2280_Not for the Faint of Heart.json new file mode 100644 index 00000000..e1d7ae5d --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Allied Societies/Vath/Dailies/2280_Not for the Faint of Heart.json @@ -0,0 +1,118 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016879, + "Position": { + "X": -412.16144, + "Y": 2.644555, + "Z": -145.1286 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2006950, + "Position": { + "X": -450.9499, + "Y": -7.7058716, + "Z": -222.61395 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true, + "Land": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1016879, + "Position": { + "X": -412.16144, + "Y": 2.644555, + "Z": -145.1286 + }, + "TerritoryId": 398, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2006951, + "Position": { + "X": -388.35742, + "Y": -10.238831, + "Z": -268.5741 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true, + "Land": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1016879, + "Position": { + "X": -412.16144, + "Y": 2.644555, + "Z": -145.1286 + }, + "TerritoryId": 398, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016803, + "Position": { + "X": 57.297607, + "Y": -47.842846, + "Z": -174.63953 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/AST/2012_Stairway to the Heavens.json b/QuestPaths/3.x - Heavensward/Class Quests/AST/2012_Stairway to the Heavens.json new file mode 100644 index 00000000..3c0f7158 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/AST/2012_Stairway to the Heavens.json @@ -0,0 +1,222 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "StopDistance": 5 + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1012221, + "Position": { + "X": 195.08655, + "Y": -5.3999624, + "Z": -65.65961 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "StopDistance": 4, + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + } + }, + { + "DataId": 1012223, + "Position": { + "X": 188.70825, + "Y": -5.3999662, + "Z": -68.833435 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "StopDistance": 4, + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + } + }, + { + "DataId": 1012224, + "Position": { + "X": 175.12769, + "Y": -5.4349146, + "Z": -57.938538 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "StopDistance": 4, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "StopDistance": 4 + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 197.57971, + "Y": 307.86523, + "Z": 409.82266 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "DataId": 1014980, + "Position": { + "X": 198.6571, + "Y": 293.33, + "Z": 418.57007 + }, + "TerritoryId": 155, + "InteractionType": "Interact", + "Fly": false, + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "StopDistance": 4, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1014931, + "Position": { + "X": 182.97095, + "Y": 7.488976, + "Z": -46.830017 + }, + "TerritoryId": 153, + "InteractionType": "Interact", + "AetheryteShortcut": "South Shroud - Quarrymill", + "StopDistance": 4, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1014925, + "Position": { + "X": 184.49683, + "Y": 14.1174555, + "Z": 51.92639 + }, + "TerritoryId": 153, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "Fly": true, + "AetheryteShortcut": "South Shroud - Quarrymill", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "NextQuestId": 2013 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/AST/2013_Fortune Favors the Bole.json b/QuestPaths/3.x - Heavensward/Class Quests/AST/2013_Fortune Favors the Bole.json new file mode 100644 index 00000000..044fc665 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/AST/2013_Fortune Favors the Bole.json @@ -0,0 +1,77 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1014981, + "Position": { + "X": 185.62585, + "Y": 14.044273, + "Z": 50.492065 + }, + "TerritoryId": 153, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "Fly": true, + "AetheryteShortcut": "South Shroud - Quarrymill", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1014981, + "Position": { + "X": 185.62585, + "Y": 14.044273, + "Z": 50.492065 + }, + "TerritoryId": 153, + "InteractionType": "SinglePlayerDuty", + "StopDistance": 5, + "Fly": true, + "AetheryteShortcut": "South Shroud - Quarrymill", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "NextQuestId": 2014 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/AST/2014_Hanging in the Balance.json b/QuestPaths/3.x - Heavensward/Class Quests/AST/2014_Hanging in the Balance.json new file mode 100644 index 00000000..e5c48b7e --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/AST/2014_Hanging in the Balance.json @@ -0,0 +1,169 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1014935, + "Position": { + "X": 143.35852, + "Y": -6.0896406, + "Z": 409.81152 + }, + "TerritoryId": 145, + "InteractionType": "Interact", + "StopDistance": 5, + "Fly": true, + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2006314, + "Position": { + "X": 143.05322, + "Y": -6.149414, + "Z": 412.10034 + }, + "TerritoryId": 145, + "InteractionType": "Interact", + "StopDistance": 2, + "AetheryteShortcut": "Eastern Thanalan - Camp Drybone", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1014941, + "Position": { + "X": -61.72278, + "Y": 23.150558, + "Z": -408.71295 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "StopDistance": 4, + "Fly": false, + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2006315, + "Position": { + "X": -60.16632, + "Y": 23.147888, + "Z": -406.79028 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "StopDistance": 2, + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1014941, + "Position": { + "X": -61.72278, + "Y": 23.150558, + "Z": -408.71295 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "StopDistance": 3, + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "NextQuestId": 2015 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/AST/2015_A Lesson in Patience.json b/QuestPaths/3.x - Heavensward/Class Quests/AST/2015_A Lesson in Patience.json new file mode 100644 index 00000000..cdc2fc0c --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/AST/2015_A Lesson in Patience.json @@ -0,0 +1,70 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1014944, + "Position": { + "X": 199.93884, + "Y": -0.899981, + "Z": -48.722107 + }, + "TerritoryId": 419, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 199.93884, + "Y": -0.899981, + "Z": -48.722107 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + }, + "NextQuestId": 2016 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/AST/2016_Slings and Arrows.json b/QuestPaths/3.x - Heavensward/Class Quests/AST/2016_Slings and Arrows.json new file mode 100644 index 00000000..4e0e5b5e --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/AST/2016_Slings and Arrows.json @@ -0,0 +1,260 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1014944, + "Position": { + "X": 199.93884, + "Y": -0.899981, + "Z": -48.722107 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "StopDistance": 4, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "MaximumDistance": 100, + "TerritoryId": 419 + } + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1014946, + "Position": { + "X": -189.89856, + "Y": 16, + "Z": 58.182617 + }, + "TerritoryId": 129, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Hawkers' Alley" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1014947, + "Position": { + "X": -187.85382, + "Y": 3.9999306, + "Z": 170.1228 + }, + "TerritoryId": 129, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Hawkers' Alley", + "[Limsa Lominsa] Fishermens' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + } + }, + { + "Position": { + "X": -2.1358607, + "Y": 45.631218, + "Z": -258.50027 + }, + "TerritoryId": 128, + "InteractionType": "WalkTo", + "AethernetShortcut": [ + "[Limsa Lominsa] Fishermens' Guild", + "[Limsa Lominsa] Marauders' Guild" + ], + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 128 + ] + } + } + }, + { + "DataId": 1003282, + "Position": { + "X": -3.03656, + "Y": 48.168007, + "Z": -261.70752 + }, + "TerritoryId": 128, + "InteractionType": "Interact", + "StopDistance": 5, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1002680, + "Position": { + "X": 1.4800415, + "Y": 30.47563, + "Z": -242.20648 + }, + "TerritoryId": 128, + "InteractionType": "Interact", + "StopDistance": 5, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1014948, + "Position": { + "X": 17.166382, + "Y": 47.600006, + "Z": -160.23505 + }, + "TerritoryId": 128, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Marauders' Guild" + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 2006316, + "Position": { + "X": 17.715698, + "Y": 47.592896, + "Z": -160.47919 + }, + "TerritoryId": 128, + "InteractionType": "SinglePlayerDuty" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + }, + "NextQuestId": 2017 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/AST/2017_Ewer Right.json b/QuestPaths/3.x - Heavensward/Class Quests/AST/2017_Ewer Right.json new file mode 100644 index 00000000..f239d318 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/AST/2017_Ewer Right.json @@ -0,0 +1,178 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 197.69202, + "Y": 307.86456, + "Z": 409.4611 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "DataId": 1006377, + "Position": { + "X": 200.97656, + "Y": 293.33, + "Z": 420.37073 + }, + "TerritoryId": 155, + "InteractionType": "Interact", + "StopDistance": 4, + "Fly": false, + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1014949, + "Position": { + "X": -159.65515, + "Y": 40.350307, + "Z": -194.7204 + }, + "TerritoryId": 156, + "InteractionType": "SinglePlayerDuty", + "StopDistance": 5, + "AetheryteShortcut": "Mor Dhona", + "Fly": true, + "Comment": "Solo duty here!" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2006318, + "Position": { + "X": -147.2649, + "Y": 43.320312, + "Z": -186.63312 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "StopDistance": 3 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + }, + "NextQuestId": 2018 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/AST/2018_Loved by the Sun.json b/QuestPaths/3.x - Heavensward/Class Quests/AST/2018_Loved by the Sun.json new file mode 100644 index 00000000..53c9b361 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/AST/2018_Loved by the Sun.json @@ -0,0 +1,70 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1014944, + "Position": { + "X": 199.93884, + "Y": -0.899981, + "Z": -48.722107 + }, + "TerritoryId": 419, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 199.93884, + "Y": -0.899981, + "Z": -48.722107 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + }, + "NextQuestId": 2019 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/AST/2019_Spearheading Initiatives.json b/QuestPaths/3.x - Heavensward/Class Quests/AST/2019_Spearheading Initiatives.json new file mode 100644 index 00000000..3eca2030 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/AST/2019_Spearheading Initiatives.json @@ -0,0 +1,149 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1014944, + "Position": { + "X": 199.93884, + "Y": -0.899981, + "Z": -48.722107 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "StopDistance": 4, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1014957, + "Position": { + "X": 238.78845, + "Y": 302, + "Z": -277.97363 + }, + "TerritoryId": 155, + "InteractionType": "SinglePlayerDuty", + "StopDistance": 4, + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1014960, + "Position": { + "X": 262.83667, + "Y": 359.1351, + "Z": -688.3192 + }, + "TerritoryId": 155, + "InteractionType": "Interact", + "StopDistance": 4, + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1014961, + "Position": { + "X": 259.72375, + "Y": 359.09564, + "Z": -689.93665 + }, + "TerritoryId": 155, + "InteractionType": "Interact", + "StopDistance": 4, + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 2006367, + "Position": { + "X": 205.92041, + "Y": 307.8507, + "Z": 412.25293 + }, + "TerritoryId": 155, + "InteractionType": "CompleteQuest", + "StopDistance": 2, + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "Fly": true, + "NextQuestId": 2020 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/AST/2020_Sharlayan Ascending.json b/QuestPaths/3.x - Heavensward/Class Quests/AST/2020_Sharlayan Ascending.json new file mode 100644 index 00000000..278fcccd --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/AST/2020_Sharlayan Ascending.json @@ -0,0 +1,205 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1015127, + "Position": { + "X": 204.60815, + "Y": 307.87106, + "Z": 414.63342 + }, + "TerritoryId": 155, + "InteractionType": "AcceptQuest", + "StopDistance": 3, + "Fly": true, + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1006377, + "Position": { + "X": 200.97656, + "Y": 293.33, + "Z": 420.37073 + }, + "TerritoryId": 155, + "InteractionType": "Interact", + "StopDistance": 4, + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + 1, + null, + null, + null, + null, + 128 + ] + } + } + }, + { + "Position": { + "X": 205.51671, + "Y": 285.27087, + "Z": 413.4063 + }, + "TerritoryId": 155, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": 198.82875, + "Y": 234.59601, + "Z": 424.70218 + }, + "Type": "SingleJump" + } + }, + { + "DataId": 1006376, + "Position": { + "X": 195.3612, + "Y": 234.79839, + "Z": 419.3026 + }, + "TerritoryId": 155, + "InteractionType": "Interact", + "StopDistance": 3 + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1015128, + "Position": { + "X": 116.472046, + "Y": -4.734893, + "Z": -52.567383 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "StopDistance": 5 + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1015130, + "Position": { + "X": 51.743286, + "Y": 11.741424, + "Z": 27.115234 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "StopDistance": 5 + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1015129, + "Position": { + "X": -0.07635498, + "Y": 11.965096, + "Z": 44.327393 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "StopDistance": 5 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + }, + "NextQuestId": 2021 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/AST/2021_Empty Nest.json b/QuestPaths/3.x - Heavensward/Class Quests/AST/2021_Empty Nest.json new file mode 100644 index 00000000..1d50e6b1 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/AST/2021_Empty Nest.json @@ -0,0 +1,249 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1015142, + "Position": { + "X": 446.98242, + "Y": 217.95142, + "Z": 753.994 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "StopDistance": 5, + "Fly": true, + "AetheryteShortcut": "Coerthas Western Highlands - Falcon's Nest", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1015145, + "Position": { + "X": 487.17468, + "Y": 200.23772, + "Z": 656.27515 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "Fly": true, + "StopDistance": 5, + "AetheryteShortcut": "Coerthas Western Highlands - Falcon's Nest", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1015146, + "Position": { + "X": 485.0995, + "Y": 200.2377, + "Z": 654.68823 + }, + "TerritoryId": 397, + "InteractionType": "Action", + "StopDistance": 4, + "Action": "Aspected Benefic" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 501.1413, + "Y": 161.74702, + "Z": -318.04788 + }, + "TerritoryId": 397, + "InteractionType": "Combat", + "StopDistance": 3, + "EnemySpawnType": "AutoOnEnterArea", + "ComplexCombatData": [ + { + "DataId": 4619, + "MinimumKillCount": 1 + }, + { + "DataId": 4360, + "MinimumKillCount": 2 + } + ], + "AetheryteShortcut": "Coerthas Western Highlands - Falcon's Nest", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1015147, + "Position": { + "X": 500.11438, + "Y": 161.61157, + "Z": -320.02753 + }, + "TerritoryId": 397, + "InteractionType": "Action", + "Action": "Aspected Benefic", + "StopDistance": 3 + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1015142, + "Position": { + "X": 446.98242, + "Y": 217.95142, + "Z": 753.994 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "StopDistance": 4, + "AetheryteShortcut": "Coerthas Western Highlands - Falcon's Nest", + "Fly": true + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "Position": { + "X": 529.5874, + "Y": 227.05162, + "Z": 717.32074 + }, + "TerritoryId": 397, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "InteractionType": "None", + "Mount": false, + "TerritoryId": 397 + }, + { + "DataId": 1015149, + "Position": { + "X": 533.59265, + "Y": 228.33778, + "Z": 720.2715 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "StopDistance": 4 + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1015151, + "Position": { + "X": 541.25256, + "Y": 228.85133, + "Z": 742.5497 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "StopDistance": 4, + "Fly": false + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + }, + "NextQuestId": 2022 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/AST/2022_Conviction.json b/QuestPaths/3.x - Heavensward/Class Quests/AST/2022_Conviction.json new file mode 100644 index 00000000..fa5702bb --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/AST/2022_Conviction.json @@ -0,0 +1,191 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1015168, + "Position": { + "X": -266.01056, + "Y": 126.407364, + "Z": -0.045776367 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "StopDistance": 5, + "Fly": true, + "AetheryteShortcut": "Coerthas Western Highlands - Falcon's Nest", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1015169, + "Position": { + "X": -311.42145, + "Y": 126.83597, + "Z": 3.4942627 + }, + "TerritoryId": 397, + "InteractionType": "Action", + "StopDistance": 4, + "Action": "Aspected Benefic", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1015171, + "Position": { + "X": -320.02753, + "Y": 126.52038, + "Z": -14.023071 + }, + "TerritoryId": 397, + "InteractionType": "Action", + "StopDistance": 4, + "Action": "Aspected Benefic", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1015170, + "Position": { + "X": -296.86432, + "Y": 125.87531, + "Z": -14.389343 + }, + "TerritoryId": 397, + "InteractionType": "Action", + "StopDistance": 4, + "Action": "Aspected Benefic", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1015163, + "Position": { + "X": -310.0786, + "Y": 125.02021, + "Z": -25.192688 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "StopDistance": 4 + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1015178, + "Position": { + "X": -310.0786, + "Y": 125.02021, + "Z": -25.192688 + }, + "TerritoryId": 397, + "InteractionType": "Action", + "StopDistance": 4, + "Action": "Aspected Benefic" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + }, + "NextQuestId": 2023 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/AST/2023_Feather in the Cap.json b/QuestPaths/3.x - Heavensward/Class Quests/AST/2023_Feather in the Cap.json new file mode 100644 index 00000000..a53cd989 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/AST/2023_Feather in the Cap.json @@ -0,0 +1,203 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1015084, + "Position": { + "X": 487.08313, + "Y": -51.1414, + "Z": 33.340942 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "StopDistance": 5, + "Fly": false, + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1015094, + "Position": { + "X": 472.03772, + "Y": -51.14139, + "Z": 8.590759 + }, + "TerritoryId": 398, + "InteractionType": "Action", + "StopDistance": 4, + "Action": "Aspected Benefic", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1015092, + "Position": { + "X": 560.9979, + "Y": -51.27571, + "Z": 62.974 + }, + "TerritoryId": 398, + "InteractionType": "Action", + "StopDistance": 4, + "Action": "Aspected Benefic", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1015093, + "Position": { + "X": 465.568, + "Y": -51.19559, + "Z": 98.10022 + }, + "TerritoryId": 398, + "InteractionType": "Action", + "StopDistance": 4, + "Action": "Aspected Benefic", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1015087, + "Position": { + "X": 509.75806, + "Y": -51.32657, + "Z": 75.913574 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "StopDistance": 4, + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1015095, + "Position": { + "X": 731.56323, + "Y": -40.98759, + "Z": -27.420471 + }, + "TerritoryId": 398, + "InteractionType": "SinglePlayerDuty", + "StopDistance": 4, + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + }, + "NextQuestId": 2024 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/AST/2024_Trumped.json b/QuestPaths/3.x - Heavensward/Class Quests/AST/2024_Trumped.json new file mode 100644 index 00000000..aaecc2f0 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/AST/2024_Trumped.json @@ -0,0 +1,209 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1015181, + "Position": { + "X": 707.94226, + "Y": 204.32489, + "Z": -252.49103 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "StopDistance": 5, + "Fly": true, + "AetheryteShortcut": "Coerthas Western Highlands - Falcon's Nest", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1015190, + "Position": { + "X": 679.1942, + "Y": 207.2133, + "Z": -273.82324 + }, + "TerritoryId": 397, + "InteractionType": "Action", + "StopDistance": 4, + "Action": "Aspected Benefic" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1015191, + "Position": { + "X": 651.78906, + "Y": 207.92256, + "Z": -268.29938 + }, + "TerritoryId": 397, + "InteractionType": "Action", + "StopDistance": 4, + "Action": "Aspected Benefic" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1015192, + "Position": { + "X": 652.82666, + "Y": 209.09976, + "Z": -282.70392 + }, + "TerritoryId": 397, + "InteractionType": "Action", + "StopDistance": 4, + "Action": "Aspected Benefic" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "Position": { + "X": 614.313, + "Y": 210.86438, + "Z": -301.28937 + }, + "TerritoryId": 397, + "InteractionType": "Combat", + "StopDistance": 3, + "EnemySpawnType": "AutoOnEnterArea", + "ComplexCombatData": [ + { + "DataId": 4676, + "MinimumKillCount": 3 + } + ] + }, + { + "DataId": 2006415, + "Position": { + "X": 614.313, + "Y": 210.86438, + "Z": -301.28937 + }, + "TerritoryId": 397, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1015197, + "Position": { + "X": 614.25183, + "Y": 210.67752, + "Z": -300.1908 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "StopDistance": 3 + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1015181, + "Position": { + "X": 707.94226, + "Y": 204.32489, + "Z": -252.49103 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "StopDistance": 5, + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + }, + "NextQuestId": 2025 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/AST/2025_The Hands of Fate.json b/QuestPaths/3.x - Heavensward/Class Quests/AST/2025_The Hands of Fate.json new file mode 100644 index 00000000..72c549ee --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/AST/2025_The Hands of Fate.json @@ -0,0 +1,178 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1015108, + "Position": { + "X": -359.42633, + "Y": 141.55403, + "Z": -215.32007 + }, + "TerritoryId": 399, + "InteractionType": "Interact", + "StopDistance": 5, + "Fly": true, + "AetheryteShortcut": "Idyllshire", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1015111, + "Position": { + "X": -447.65393, + "Y": 159.354, + "Z": 147.63098 + }, + "TerritoryId": 399, + "InteractionType": "Interact", + "StopDistance": 5, + "Fly": true, + "AetheryteShortcut": "Idyllshire", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InTerritory": [ + 399 + ] + }, + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1015114, + "Position": { + "X": -370.47382, + "Y": 147.34354, + "Z": 59.128662 + }, + "TerritoryId": 399, + "InteractionType": "SinglePlayerDuty", + "StopDistance": 4, + "Fly": true, + "AetheryteShortcut": "Idyllshire", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 399 + ] + }, + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1015114, + "Position": { + "X": -370.47382, + "Y": 147.34354, + "Z": 59.128662 + }, + "TerritoryId": 399, + "InteractionType": "Interact", + "StopDistance": 4 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + }, + "NextQuestId": 2409 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/AST/2123_What's Your Sign.json b/QuestPaths/3.x - Heavensward/Class Quests/AST/2123_What's Your Sign.json new file mode 100644 index 00000000..523b0758 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/AST/2123_What's Your Sign.json @@ -0,0 +1,47 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + }, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_JOBAST299_02123_Q1_000_000", + "Yes": true + }, + { + "Type": "YesNo", + "Prompt": "TEXT_JOBAST299_02123_Q2_000_000", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/BRD/1713_On the Road Again.json b/QuestPaths/3.x - Heavensward/Class Quests/BRD/1713_On the Road Again.json new file mode 100644 index 00000000..e09b8613 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/BRD/1713_On the Road Again.json @@ -0,0 +1,199 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "pot0to", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006750, + "Position": { + "X": 16.464417, + "Y": 6.750492, + "Z": -7.3396606 + }, + "TerritoryId": 153, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "South Shroud - Quarrymill", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1014202, + "Position": { + "X": 190.14258, + "Y": -2.5202732, + "Z": 73.136475 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1000423, + "Position": { + "X": 232.04382, + "Y": 1.999974, + "Z": 45.578613 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_JOBBRD501_01713_Q1_000_000", + "Yes": true + } + ] + }, + { + "DataId": 1014203, + "Position": { + "X": 1.2359009, + "Y": 0.5000253, + "Z": -1.083435 + }, + "TerritoryId": 204, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1014203, + "Position": { + "X": 1.2359009, + "Y": 0.5000253, + "Z": -1.083435 + }, + "TerritoryId": 204, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1014207, + "Position": { + "X": 28.854736, + "Y": 6.655561, + "Z": 421.46936 + }, + "TerritoryId": 152, + "InteractionType": "Combat", + "AetheryteShortcut": "East Shroud - Hawthorne Hut", + "Fly": true, + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 4684 + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1014207, + "Position": { + "X": 28.854736, + "Y": 6.655561, + "Z": 421.46936 + }, + "TerritoryId": 152, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1014204, + "Position": { + "X": 24.673828, + "Y": 6.386869, + "Z": 414.9386 + }, + "StopDistance": 7, + "TerritoryId": 152, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1014205, + "Position": { + "X": 190.72253, + "Y": -2.5872245, + "Z": 74.75391 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1014208, + "Position": { + "X": -52.536804, + "Y": 8.059147, + "Z": 31.72351 + }, + "StopDistance": 7, + "TerritoryId": 418, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ishgard", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/MNK/2026_The Legend Continues.json b/QuestPaths/3.x - Heavensward/Class Quests/MNK/2026_The Legend Continues.json new file mode 100644 index 00000000..aacbeb62 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/MNK/2026_The Legend Continues.json @@ -0,0 +1,174 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006749, + "Position": { + "X": -30.47229, + "Y": 13.599918, + "Z": 95.26196 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Goldsmiths' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InTerritory": [ + 130, + 131 + ] + }, + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1013971, + "Position": { + "X": 15.854065, + "Y": 28.620823, + "Z": -682.76495 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Mor Dhona" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1013976, + "Position": { + "X": 95.87244, + "Y": -4.4635005, + "Z": -533.56226 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1013977, + "Position": { + "X": 207.53784, + "Y": 18.12324, + "Z": -608.75867 + }, + "TerritoryId": 156, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 777 + ], + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1013977, + "Position": { + "X": 207.53784, + "Y": 18.12324, + "Z": -608.75867 + }, + "TerritoryId": 156, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1013978, + "Position": { + "X": 205.95093, + "Y": -22.991264, + "Z": -449.24084 + }, + "TerritoryId": 156, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 4615 + ], + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1013978, + "Position": { + "X": 205.95093, + "Y": -22.991264, + "Z": -449.24084 + }, + "TerritoryId": 156, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1014111, + "Position": { + "X": 95.87244, + "Y": -4.4635005, + "Z": -533.56226 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013971, + "Position": { + "X": 15.854065, + "Y": 28.620823, + "Z": -682.76495 + }, + "TerritoryId": 156, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "Mor Dhona", + "NextQuestId": 2027 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/MNK/2027_Let's Talk about Sects.json b/QuestPaths/3.x - Heavensward/Class Quests/MNK/2027_Let's Talk about Sects.json new file mode 100644 index 00000000..06cd8ffb --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/MNK/2027_Let's Talk about Sects.json @@ -0,0 +1,206 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013971, + "Position": { + "X": 15.854065, + "Y": 28.620823, + "Z": -682.76495 + }, + "TerritoryId": 156, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1013982, + "Position": { + "X": -73.0755, + "Y": 2.668869, + "Z": -622.52234 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -144.73549, + "Y": 1.9077771, + "Z": -655.4047 + }, + "TerritoryId": 156, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1013984, + "Position": { + "X": -142.22937, + "Y": 1.3916924, + "Z": -654.13904 + }, + "TerritoryId": 156, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": -142.22937, + "Y": 1.3916924, + "Z": -654.13904 + }, + "TerritoryId": 156, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 5047 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -222.99123, + "Y": 3.602174, + "Z": -625.4028 + }, + "TerritoryId": 156, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1013987, + "Position": { + "X": -223.40735, + "Y": 4.1458693, + "Z": -628.32074 + }, + "TerritoryId": 156, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "Position": { + "X": -223.40735, + "Y": 4.1458693, + "Z": -628.32074 + }, + "TerritoryId": 156, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 5047 + ] + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "Position": { + "X": -256.7943, + "Y": -5.5647316, + "Z": -542.8478 + }, + "TerritoryId": 156, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1013990, + "Position": { + "X": -253.83386, + "Y": -5.455734, + "Z": -542.87024 + }, + "TerritoryId": 156, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "Position": { + "X": -253.83386, + "Y": -5.455734, + "Z": -542.87024 + }, + "TerritoryId": 156, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 5043 + ] + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1013994, + "Position": { + "X": -402.36517, + "Y": -14.213073, + "Z": -502.06763 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013971, + "Position": { + "X": 15.854065, + "Y": 28.620823, + "Z": -682.76495 + }, + "TerritoryId": 156, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "Mor Dhona", + "NextQuestId": 2028 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/MNK/2028_Against the Shadow.json b/QuestPaths/3.x - Heavensward/Class Quests/MNK/2028_Against the Shadow.json new file mode 100644 index 00000000..a93e8d7b --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/MNK/2028_Against the Shadow.json @@ -0,0 +1,78 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013971, + "Position": { + "X": 15.854065, + "Y": 28.620823, + "Z": -682.76495 + }, + "TerritoryId": 156, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1013997, + "Position": { + "X": -78.29407, + "Y": 68.34659, + "Z": -157.33582 + }, + "TerritoryId": 147, + "InteractionType": "SinglePlayerDuty", + "Fly": true, + "AetheryteShortcut": "Northern Thanalan - Ceruleum Processing Plant" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1013997, + "Position": { + "X": -78.29407, + "Y": 68.34659, + "Z": -157.33582 + }, + "StopDistance": 4, + "TerritoryId": 147, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013971, + "Position": { + "X": 15.854065, + "Y": 28.620823, + "Z": -682.76495 + }, + "TerritoryId": 156, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "Mor Dhona", + "NextQuestId": 2029 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/MNK/2029_Fight the Battle to Win.json b/QuestPaths/3.x - Heavensward/Class Quests/MNK/2029_Fight the Battle to Win.json new file mode 100644 index 00000000..e34d7d8a --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/MNK/2029_Fight the Battle to Win.json @@ -0,0 +1,98 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013971, + "Position": { + "X": 15.854065, + "Y": 28.620823, + "Z": -682.76495 + }, + "TerritoryId": 156, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1013999, + "Position": { + "X": 33.89026, + "Y": -8.812927, + "Z": 126.17676 + }, + "TerritoryId": 154, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "North Shroud - Fallgourd Float" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2005966, + "Position": { + "X": 163.53088, + "Y": -27.328918, + "Z": 207.84314 + }, + "TerritoryId": 154, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 5043 + ], + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1014001, + "Position": { + "X": 404.89807, + "Y": -5.4588227, + "Z": 72.342896 + }, + "TerritoryId": 154, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013971, + "Position": { + "X": 15.854065, + "Y": 28.620823, + "Z": -682.76495 + }, + "TerritoryId": 156, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "Mor Dhona", + "NextQuestId": 2030 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/MNK/2030_Stop the Senseless Killing.json b/QuestPaths/3.x - Heavensward/Class Quests/MNK/2030_Stop the Senseless Killing.json new file mode 100644 index 00000000..178c6859 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/MNK/2030_Stop the Senseless Killing.json @@ -0,0 +1,141 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013971, + "Position": { + "X": 15.854065, + "Y": 28.620823, + "Z": -682.76495 + }, + "TerritoryId": 156, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 873.8737, + "Y": -3.1452856, + "Z": 352.47165 + }, + "TerritoryId": 398, + "InteractionType": "WalkTo", + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather", + "Fly": true + }, + { + "DataId": 1014005, + "Position": { + "X": -631.22, + "Y": 121.245285, + "Z": -652.39954 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2005967, + "Position": { + "X": -556.9696, + "Y": 116.68567, + "Z": -794.0032 + }, + "TerritoryId": 397, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 4627 + ], + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1014006, + "Position": { + "X": -627.19165, + "Y": 121.248, + "Z": -648.5847 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1014007, + "Position": { + "X": -621.51526, + "Y": 121.248, + "Z": -649.13403 + }, + "TerritoryId": 397, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1014010, + "Position": { + "X": -621.51526, + "Y": 121.248, + "Z": -649.13403 + }, + "TerritoryId": 397, + "InteractionType": "Emote", + "Emote": "rally", + "DelaySecondsAtStart": 1, + "$": "Delay added due to step being cancelled abruptly if started immediately" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013971, + "Position": { + "X": 15.854065, + "Y": 28.620823, + "Z": -682.76495 + }, + "TerritoryId": 156, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "Mor Dhona", + "NextQuestId": 2031 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/MNK/2031_Appetite for Destruction.json b/QuestPaths/3.x - Heavensward/Class Quests/MNK/2031_Appetite for Destruction.json new file mode 100644 index 00000000..32549063 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/MNK/2031_Appetite for Destruction.json @@ -0,0 +1,83 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013971, + "Position": { + "X": 15.854065, + "Y": 28.620823, + "Z": -682.76495 + }, + "TerritoryId": 156, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1014012, + "Position": { + "X": -142.1684, + "Y": 26.764246, + "Z": -357.50366 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo", + "DialogueChoices": [ + { + "Prompt": "TEXT_JOBMNK600_02031_Q1_000_000", + "Type": "List", + "Answer": "TEXT_JOBMNK600_02031_A1_000_010" + } + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1014011, + "Position": { + "X": -143.08392, + "Y": 26.654997, + "Z": -358.114 + }, + "TerritoryId": 146, + "InteractionType": "SinglePlayerDuty" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1014112, + "Position": { + "X": -149.34009, + "Y": 12.685881, + "Z": -260.91406 + }, + "StopDistance": 4, + "TerritoryId": 146, + "InteractionType": "CompleteQuest", + "NextQuestId": 2426 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/WAR/588_The Bear Necessity.json b/QuestPaths/3.x - Heavensward/Class Quests/WAR/588_The Bear Necessity.json index f3ce1fe7..559d211e 100644 --- a/QuestPaths/3.x - Heavensward/Class Quests/WAR/588_The Bear Necessity.json +++ b/QuestPaths/3.x - Heavensward/Class Quests/WAR/588_The Bear Necessity.json @@ -135,6 +135,20 @@ { "Sequence": 3, "Steps": [ + { + "Position": { + "X": 423.53406, + "Y": -26.253891, + "Z": -550.60297 + }, + "TerritoryId": 398, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, { "DataId": 2005573, "Position": { @@ -177,7 +191,8 @@ "StepIf": { "Flying": "Unlocked" } - } + }, + "DisableNavmesh": true } ] }, diff --git a/QuestPaths/3.x - Heavensward/Class Quests/WAR/601_And My Axe.json b/QuestPaths/3.x - Heavensward/Class Quests/WAR/601_And My Axe.json index 241c804a..fca23e00 100644 --- a/QuestPaths/3.x - Heavensward/Class Quests/WAR/601_And My Axe.json +++ b/QuestPaths/3.x - Heavensward/Class Quests/WAR/601_And My Axe.json @@ -110,7 +110,8 @@ "Z": 63.553833 }, "TerritoryId": 138, - "InteractionType": "CompleteQuest" + "InteractionType": "CompleteQuest", + "NextQuestId": 2900 } ] } diff --git a/QuestPaths/3.x - Heavensward/Class Quests/WHM/1719_Taint Misbehaving.json b/QuestPaths/3.x - Heavensward/Class Quests/WHM/1719_Taint Misbehaving.json new file mode 100644 index 00000000..d755cd05 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/WHM/1719_Taint Misbehaving.json @@ -0,0 +1,250 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": -146.86935, + "Y": 8.006159, + "Z": 268.78055 + }, + "StopDistance": 0.25, + "TerritoryId": 153, + "AetheryteShortcut": "South Shroud - Camp Tranquil", + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -137.77051, + "Y": 7.7094107, + "Z": 275.28036 + }, + "DelaySeconds": 0.75 + }, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "Flying": "Unlocked", + "NearPosition": { + "Position": { + "X": -139.45221, + "Y": 8.712891, + "Z": 281.69678 + }, + "MaximumDistance": 3, + "TerritoryId": 153 + } + } + } + }, + { + "Position": { + "X": -139.04318, + "Y": 8.522301, + "Z": 280.0128 + }, + "TerritoryId": 153, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "Flying": "Locked" + } + } + }, + { + "DataId": 1006751, + "Position": { + "X": -139.45221, + "Y": 8.712891, + "Z": 281.69678 + }, + "TerritoryId": 153, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1013606, + "Position": { + "X": -317.1283, + "Y": 21.686531, + "Z": 183.03198 + }, + "TerritoryId": 148, + "Fly": true, + "InteractionType": "Interact", + "AetheryteShortcut": "Central Shroud - Bentbranch Meadows" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1006245, + "Position": { + "X": 4.9591064, + "Y": -46.518013, + "Z": 248.49304 + }, + "TerritoryId": 154, + "InteractionType": "Interact", + "AetheryteShortcut": "North Shroud - Fallgourd Float", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1007092, + "Position": { + "X": -59.31189, + "Y": -40.90982, + "Z": 232.62378 + }, + "TerritoryId": 154, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1002804, + "Position": { + "X": -26.260803, + "Y": -40.705082, + "Z": 172.74731 + }, + "TerritoryId": 154, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 108.506836, + "Y": 7.167203, + "Z": -47.01306 + }, + "Fly": true, + "TerritoryId": 154, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4683 + ], + "CompletionQuestVariablesFlags": [ + 2, + null, + null, + null, + null, + null + ] + }, + { + "DataId": 1013605, + "Position": { + "X": 108.506836, + "Y": 7.167203, + "Z": -47.01306 + }, + "TerritoryId": 154, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1013605, + "Position": { + "X": 108.506836, + "Y": 7.167203, + "Z": -47.01306 + }, + "TerritoryId": 154, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1013606, + "Position": { + "X": -317.1283, + "Y": 21.686531, + "Z": 183.03198 + }, + "TerritoryId": 148, + "Fly": true, + "InteractionType": "Interact", + "AetheryteShortcut": "Central Shroud - Bentbranch Meadows" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1013608, + "Position": { + "X": -314.9615, + "Y": 21.609262, + "Z": 182.8794 + }, + "TerritoryId": 148, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013609, + "Position": { + "X": -44.480103, + "Y": -40.949986, + "Z": 187.7622 + }, + "AetheryteShortcut": "North Shroud - Fallgourd Float", + "TerritoryId": 154, + "InteractionType": "CompleteQuest", + "NextQuestId": 1720 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/WHM/1720_A Journey of Purification.json b/QuestPaths/3.x - Heavensward/Class Quests/WHM/1720_A Journey of Purification.json new file mode 100644 index 00000000..be678168 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/WHM/1720_A Journey of Purification.json @@ -0,0 +1,92 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013609, + "Position": { + "X": -44.480103, + "Y": -40.949986, + "Z": 187.7622 + }, + "AetheryteShortcut": "North Shroud - Fallgourd Float", + "TerritoryId": 154, + "InteractionType": "AcceptQuest", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1013610, + "Position": { + "X": 209.21643, + "Y": 302, + "Z": -204.85242 + }, + "TerritoryId": 155, + "InteractionType": "Interact", + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "Mount": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1013663, + "Position": { + "X": 161.91345, + "Y": 275.37952, + "Z": 16.403442 + }, + "TerritoryId": 155, + "Fly": true, + "InteractionType": "SinglePlayerDuty" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2005889, + "Position": { + "X": 143.78564, + "Y": 280.0183, + "Z": 19.882507 + }, + "TerritoryId": 155, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013610, + "Position": { + "X": 209.21643, + "Y": 302, + "Z": -204.85242 + }, + "TerritoryId": 155, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "NextQuestId": 1721 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/WHM/1721_The Girl with the Dragon Tissue.json b/QuestPaths/3.x - Heavensward/Class Quests/WHM/1721_The Girl with the Dragon Tissue.json new file mode 100644 index 00000000..c219c397 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/WHM/1721_The Girl with the Dragon Tissue.json @@ -0,0 +1,185 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013610, + "Position": { + "X": 209.21643, + "Y": 302, + "Z": -204.85242 + }, + "TerritoryId": 155, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1013613, + "Position": { + "X": 479.91138, + "Y": 226.62401, + "Z": 817.0442 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "AetheryteShortcut": "Coerthas Western Highlands - Falcon's Nest" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1011232, + "Position": { + "X": 506.8589, + "Y": 217.95148, + "Z": 792.4772 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1011237, + "Position": { + "X": 447.3181, + "Y": 212.53984, + "Z": 725.00183 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1013614, + "Position": { + "X": 463.5232, + "Y": 200.23772, + "Z": 651.911 + }, + "TerritoryId": 397, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1013617, + "Position": { + "X": -513.0846, + "Y": 101.57904, + "Z": -653.3456 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "Position": { + "X": -336.4157, + "Y": 89.00586, + "Z": -586.5721 + }, + "TerritoryId": 397, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4677 + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + 2, + null, + null, + null, + null, + null + ] + }, + { + "DataId": 2005855, + "Position": { + "X": -336.4157, + "Y": 89.00586, + "Z": -586.5721 + }, + "TerritoryId": 397, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1013618, + "Position": { + "X": -402.12103, + "Y": 90.9028, + "Z": -688.53284 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013614, + "Position": { + "X": 463.5232, + "Y": 200.23772, + "Z": 651.911 + }, + "TerritoryId": 397, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Coerthas Western Highlands - Falcon's Nest", + "NextQuestId": 1722 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/WHM/1722_The Dark Blight Writhes.json b/QuestPaths/3.x - Heavensward/Class Quests/WHM/1722_The Dark Blight Writhes.json new file mode 100644 index 00000000..cc6a8f04 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/WHM/1722_The Dark Blight Writhes.json @@ -0,0 +1,115 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013614, + "Position": { + "X": 463.5232, + "Y": 200.23772, + "Z": 651.911 + }, + "TerritoryId": 397, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Coerthas Western Highlands - Falcon's Nest", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1013619, + "Position": { + "X": -274.49457, + "Y": 125.33218, + "Z": -13.870483 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1013620, + "Position": { + "X": -275.2575, + "Y": 125.596924, + "Z": -11.215393 + }, + "StopDistance": 5, + "TerritoryId": 397, + "InteractionType": "Action", + "Action": "Cure II" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2005857, + "Position": { + "X": -336.4157, + "Y": 89.00586, + "Z": -586.5721 + }, + "TerritoryId": 397, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4690 + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + 4, + null, + null, + null, + null, + null + ] + }, + { + "DataId": 2005857, + "Position": { + "X": -336.4157, + "Y": 89.00586, + "Z": -586.5721 + }, + "TerritoryId": 397, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013623, + "Position": { + "X": 486.93054, + "Y": -51.1414, + "Z": 25.986084 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather", + "NextQuestId": 1723 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/WHM/1723_In the Wake of Death.json b/QuestPaths/3.x - Heavensward/Class Quests/WHM/1723_In the Wake of Death.json new file mode 100644 index 00000000..a278beb4 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/WHM/1723_In the Wake of Death.json @@ -0,0 +1,150 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013623, + "Position": { + "X": 486.93054, + "Y": -51.1414, + "Z": 25.986084 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1013624, + "Position": { + "X": -183.61182, + "Y": -104.708206, + "Z": 505.60767 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -561.82196, + "Y": -46.707886, + "Z": 300.46533 + }, + "TerritoryId": 398, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4691, + 4692 + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + 4, + null, + null, + null, + null, + null + ] + }, + { + "DataId": 2005859, + "Position": { + "X": -561.82196, + "Y": -46.707886, + "Z": 300.46533 + }, + "TerritoryId": 398, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1013625, + "Position": { + "X": -679.9573, + "Y": -100.52397, + "Z": 775.1736 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1013625, + "Position": { + "X": -679.9573, + "Y": -100.52397, + "Z": 775.1736 + }, + "TerritoryId": 398, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4690, + 4691 + ] + }, + { + "DataId": 2005861, + "Position": { + "X": -678.4009, + "Y": -100.60278, + "Z": 778.13367 + }, + "TerritoryId": 398, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013625, + "Position": { + "X": -679.9573, + "Y": -100.52397, + "Z": 775.1736 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_JOBWHM580_01723_Q1_000_000", + "Answer": "TEXT_JOBWHM580_01723_A1_000_001" + } + ], + "NextQuestId": 1724 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/WHM/1724_Trials of the Padjals.json b/QuestPaths/3.x - Heavensward/Class Quests/WHM/1724_Trials of the Padjals.json new file mode 100644 index 00000000..a109c03c --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/WHM/1724_Trials of the Padjals.json @@ -0,0 +1,94 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013627, + "Position": { + "X": -679.9573, + "Y": -100.52397, + "Z": 775.1736 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": -146.86935, + "Y": 8.006159, + "Z": 268.78055 + }, + "StopDistance": 0.25, + "TerritoryId": 153, + "AetheryteShortcut": "South Shroud - Camp Tranquil", + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -137.77051, + "Y": 7.7094107, + "Z": 275.28036 + }, + "DelaySeconds": 0.75 + }, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "Flying": "Unlocked", + "NearPosition": { + "Position": { + "X": -139.45221, + "Y": 8.712891, + "Z": 281.69678 + }, + "MaximumDistance": 3, + "TerritoryId": 153 + } + } + } + }, + { + "Position": { + "X": -139.04318, + "Y": 8.522301, + "Z": 280.0128 + }, + "TerritoryId": 153, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "Flying": "Locked" + } + } + }, + { + "DataId": 1006751, + "Position": { + "X": -139.45221, + "Y": 8.712891, + "Z": 281.69678 + }, + "TerritoryId": 153, + "InteractionType": "CompleteQuest", + "NextQuestId": 1725 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Class Quests/WHM/1725_Hands of Healing.json b/QuestPaths/3.x - Heavensward/Class Quests/WHM/1725_Hands of Healing.json new file mode 100644 index 00000000..e5222cab --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Class Quests/WHM/1725_Hands of Healing.json @@ -0,0 +1,284 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": -146.86935, + "Y": 8.006159, + "Z": 268.78055 + }, + "StopDistance": 0.25, + "TerritoryId": 153, + "AetheryteShortcut": "South Shroud - Camp Tranquil", + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -137.77051, + "Y": 7.7094107, + "Z": 275.28036 + }, + "DelaySeconds": 0.75 + }, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "Flying": "Unlocked", + "NearPosition": { + "Position": { + "X": -139.45221, + "Y": 8.712891, + "Z": 281.69678 + }, + "MaximumDistance": 3, + "TerritoryId": 153 + } + } + } + }, + { + "Position": { + "X": -139.04318, + "Y": 8.522301, + "Z": 280.0128 + }, + "TerritoryId": 153, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "Flying": "Locked" + } + } + }, + { + "DataId": 1006751, + "Position": { + "X": -139.45221, + "Y": 8.712891, + "Z": 281.69678 + }, + "TerritoryId": 153, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1013609, + "Position": { + "X": -44.480103, + "Y": -40.949986, + "Z": 187.7622 + }, + "TerritoryId": 154, + "InteractionType": "Interact", + "AetheryteShortcut": "North Shroud - Fallgourd Float" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -146.86935, + "Y": 8.006159, + "Z": 268.78055 + }, + "StopDistance": 0.25, + "TerritoryId": 153, + "AetheryteShortcut": "South Shroud - Camp Tranquil", + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -137.77051, + "Y": 7.7094107, + "Z": 275.28036 + }, + "DelaySeconds": 0.75 + }, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "Flying": "Unlocked", + "NearPosition": { + "Position": { + "X": -139.45221, + "Y": 8.712891, + "Z": 281.69678 + }, + "MaximumDistance": 3, + "TerritoryId": 153 + } + } + } + }, + { + "Position": { + "X": -139.04318, + "Y": 8.522301, + "Z": 280.0128 + }, + "TerritoryId": 153, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "Flying": "Locked" + } + } + }, + { + "DataId": 1006751, + "Position": { + "X": -139.45221, + "Y": 8.712891, + "Z": 281.69678 + }, + "TerritoryId": 153, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1013632, + "Position": { + "X": 491.38623, + "Y": -51.091385, + "Z": 34.561646 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1013635, + "Position": { + "X": -122.453674, + "Y": 0.72138774, + "Z": -615.80835 + }, + "TerritoryId": 398, + "InteractionType": "SinglePlayerDuty", + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1013639, + "Position": { + "X": -120.74469, + "Y": 0.555462, + "Z": -616.6323 + }, + "TerritoryId": 398, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1013639, + "Position": { + "X": -120.74469, + "Y": 0.555462, + "Z": -616.6323 + }, + "TerritoryId": 398, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": -146.86935, + "Y": 8.006159, + "Z": 268.78055 + }, + "StopDistance": 0.25, + "TerritoryId": 153, + "AetheryteShortcut": "South Shroud - Camp Tranquil", + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -137.77051, + "Y": 7.7094107, + "Z": 275.28036 + }, + "DelaySeconds": 0.75 + }, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "Flying": "Unlocked", + "NearPosition": { + "Position": { + "X": -139.45221, + "Y": 8.712891, + "Z": 281.69678 + }, + "MaximumDistance": 3, + "TerritoryId": 153 + } + } + } + }, + { + "Position": { + "X": -139.04318, + "Y": 8.522301, + "Z": 280.0128 + }, + "TerritoryId": 153, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "Flying": "Locked" + } + } + }, + { + "DataId": 1006751, + "Position": { + "X": -139.45221, + "Y": 8.712891, + "Z": 281.69678 + }, + "TerritoryId": 153, + "InteractionType": "CompleteQuest", + "NextQuestId": 2414 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Custom Deliveries/Zhloe/1551_Arms Wide Open.json b/QuestPaths/3.x - Heavensward/Custom Deliveries/Zhloe/1551_Arms Wide Open.json index 5ecce795..e59a26ce 100644 --- a/QuestPaths/3.x - Heavensward/Custom Deliveries/Zhloe/1551_Arms Wide Open.json +++ b/QuestPaths/3.x - Heavensward/Custom Deliveries/Zhloe/1551_Arms Wide Open.json @@ -13,7 +13,13 @@ "Z": 42.98462 }, "TerritoryId": 478, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/3.x - Heavensward/Custom Deliveries/Zhloe/S1_Zhloe Aliapoh.json b/QuestPaths/3.x - Heavensward/Custom Deliveries/Zhloe/S1_Zhloe Aliapoh.json index c2154923..1422190e 100644 --- a/QuestPaths/3.x - Heavensward/Custom Deliveries/Zhloe/S1_Zhloe Aliapoh.json +++ b/QuestPaths/3.x - Heavensward/Custom Deliveries/Zhloe/S1_Zhloe Aliapoh.json @@ -5,6 +5,11 @@ { "Sequence": 0, "Steps": [ + { + "TerritoryId": 478, + "InteractionType": "Gather", + "ItemsToGather": [] + }, { "Position": { "X": -71.31451, @@ -13,7 +18,6 @@ }, "TerritoryId": 478, "InteractionType": "WalkTo", - "RequiredGatheredItems": [], "AetheryteShortcut": "Idyllshire" }, { diff --git a/QuestPaths/3.x - Heavensward/MSQ/A1-Coerthas Western Highlands 1, Sea of Clouds 1/1580_Coming to Ishgard.json b/QuestPaths/3.x - Heavensward/MSQ/A1-Coerthas Western Highlands 1, Sea of Clouds 1/1580_Coming to Ishgard.json index 6bd29e33..e051a689 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A1-Coerthas Western Highlands 1, Sea of Clouds 1/1580_Coming to Ishgard.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A1-Coerthas Western Highlands 1, Sea of Clouds 1/1580_Coming to Ishgard.json @@ -12,6 +12,7 @@ "Y": 0.014982708, "Z": -0.07635498 }, + "StopDistance": 7, "TerritoryId": 395, "InteractionType": "AcceptQuest" } diff --git a/QuestPaths/3.x - Heavensward/MSQ/A1-Coerthas Western Highlands 1, Sea of Clouds 1/1592_Meeting the Neighbors.json b/QuestPaths/3.x - Heavensward/MSQ/A1-Coerthas Western Highlands 1, Sea of Clouds 1/1592_Meeting the Neighbors.json index c7215e44..b5ff5887 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A1-Coerthas Western Highlands 1, Sea of Clouds 1/1592_Meeting the Neighbors.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A1-Coerthas Western Highlands 1, Sea of Clouds 1/1592_Meeting the Neighbors.json @@ -114,8 +114,7 @@ "Z": 761.01306 }, "TerritoryId": 401, - "InteractionType": "CompleteQuest", - "AetheryteShortcut": "The Sea of Clouds - Camp Cloudtop" + "InteractionType": "CompleteQuest" } ] } diff --git a/QuestPaths/3.x - Heavensward/MSQ/A1-Coerthas Western Highlands 1, Sea of Clouds 1/1593_Sense of Urgency.json b/QuestPaths/3.x - Heavensward/MSQ/A1-Coerthas Western Highlands 1, Sea of Clouds 1/1593_Sense of Urgency.json index 4a8d50ac..75b0b6bb 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A1-Coerthas Western Highlands 1, Sea of Clouds 1/1593_Sense of Urgency.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A1-Coerthas Western Highlands 1, Sea of Clouds 1/1593_Sense of Urgency.json @@ -83,6 +83,15 @@ 128 ] }, + { + "Position": { + "X": -368.08698, + "Y": -185.05266, + "Z": 792.836 + }, + "TerritoryId": 401, + "InteractionType": "WalkTo" + }, { "DataId": 1012360, "Position": { diff --git a/QuestPaths/3.x - Heavensward/MSQ/A2-Raubahn/1599_Flame General Affairs.json b/QuestPaths/3.x - Heavensward/MSQ/A2-Raubahn/1599_Flame General Affairs.json index 6dfd7035..d80572cb 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A2-Raubahn/1599_Flame General Affairs.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A2-Raubahn/1599_Flame General Affairs.json @@ -20,6 +20,23 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1011952, + "Position": { + "X": -277.63788, + "Y": -184.59735, + "Z": 741.60376 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "The Sea of Clouds - Camp Cloudtop", + "PickUpQuestId": 1748, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, { "DataId": 1001029, "Position": { diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.1-Coerthas Western Highlands 2/1602_To Siege or Not to Siege.json b/QuestPaths/3.x - Heavensward/MSQ/A3.1-Coerthas Western Highlands 2/1602_To Siege or Not to Siege.json index 967dc514..90526401 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.1-Coerthas Western Highlands 2/1602_To Siege or Not to Siege.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.1-Coerthas Western Highlands 2/1602_To Siege or Not to Siege.json @@ -47,6 +47,7 @@ "Y": 16.009666, "Z": -9.567444 }, + "StopDistance": 7, "TerritoryId": 419, "InteractionType": "Interact", "TargetTerritoryId": 433 @@ -63,6 +64,7 @@ "Y": 0.022254243, "Z": -4.409851 }, + "StopDistance": 5, "TerritoryId": 433, "InteractionType": "CompleteQuest", "DialogueChoices": [ diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.1-Coerthas Western Highlands 2/1603_Alphinaud's Way.json b/QuestPaths/3.x - Heavensward/MSQ/A3.1-Coerthas Western Highlands 2/1603_Alphinaud's Way.json index 7c2298f3..05414fb3 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.1-Coerthas Western Highlands 2/1603_Alphinaud's Way.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.1-Coerthas Western Highlands 2/1603_Alphinaud's Way.json @@ -12,6 +12,7 @@ "Y": 0.022254243, "Z": -4.409851 }, + "StopDistance": 5, "TerritoryId": 433, "InteractionType": "AcceptQuest" } @@ -27,7 +28,6 @@ "Y": 1.1443481, "Z": 13.199036 }, - "StopDistance": 7, "TerritoryId": 433, "InteractionType": "Interact", "TargetTerritoryId": 419 diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.1-Coerthas Western Highlands 2/1604_In Search of Iceheart.json b/QuestPaths/3.x - Heavensward/MSQ/A3.1-Coerthas Western Highlands 2/1604_In Search of Iceheart.json index efa5f07f..e03fc6ea 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.1-Coerthas Western Highlands 2/1604_In Search of Iceheart.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.1-Coerthas Western Highlands 2/1604_In Search of Iceheart.json @@ -87,6 +87,17 @@ { "Sequence": 4, "Steps": [ + { + "DataId": 1011240, + "Position": { + "X": 493.15625, + "Y": 200.2377, + "Z": 663.01965 + }, + "TerritoryId": 397, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1744 + }, { "DataId": 2005536, "Position": { diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.1-Coerthas Western Highlands 2/1608_Purple Flame, Purple Flame.json b/QuestPaths/3.x - Heavensward/MSQ/A3.1-Coerthas Western Highlands 2/1608_Purple Flame, Purple Flame.json index 058fb527..ab4de151 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.1-Coerthas Western Highlands 2/1608_Purple Flame, Purple Flame.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.1-Coerthas Western Highlands 2/1608_Purple Flame, Purple Flame.json @@ -20,6 +20,39 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1011910, + "Position": { + "X": -298.26813, + "Y": 126.67049, + "Z": -1.4191895 + }, + "TerritoryId": 397, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1759 + }, + { + "DataId": 1011907, + "Position": { + "X": -288.8686, + "Y": 127.06639, + "Z": 13.199036 + }, + "TerritoryId": 397, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1760 + }, + { + "DataId": 1011911, + "Position": { + "X": -279.56055, + "Y": 127.08131, + "Z": 13.595764 + }, + "TerritoryId": 397, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2111 + }, { "Position": { "X": -365.48965, diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1609_Where the Chocobos Roam.json b/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1609_Where the Chocobos Roam.json index 82bc7486..cf8bc885 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1609_Where the Chocobos Roam.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1609_Where the Chocobos Roam.json @@ -20,6 +20,16 @@ { "Sequence": 1, "Steps": [ + { + "Position": { + "X": -826.9342, + "Y": 117.95439, + "Z": -642.92413 + }, + "TerritoryId": 397, + "InteractionType": "WalkTo", + "Fly": true + }, { "Position": { "X": -850.3646, diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1610_Worse than Dragons.json b/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1610_Worse than Dragons.json index d1790954..18b0e19b 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1610_Worse than Dragons.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1610_Worse than Dragons.json @@ -35,6 +35,17 @@ { "Sequence": 2, "Steps": [ + { + "DataId": 1011916, + "Position": { + "X": 470.02356, + "Y": -49.89133, + "Z": 20.370789 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1771 + }, { "Position": { "X": 634.0371, diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1614_A Gnathic Deity.json b/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1614_A Gnathic Deity.json index 9ee5317f..766d64ac 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1614_A Gnathic Deity.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1614_A Gnathic Deity.json @@ -105,6 +105,17 @@ { "Sequence": 3, "Steps": [ + { + "DataId": 1011929, + "Position": { + "X": 70.81714, + "Y": -49.2083, + "Z": -141.55798 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1790 + }, { "Position": { "X": 70.535545, diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1616_Lord of the Hive.json b/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1616_Lord of the Hive.json index cf0d154e..f73fbe9b 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1616_Lord of the Hive.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1616_Lord of the Hive.json @@ -90,13 +90,52 @@ "Sequence": 255, "Steps": [ { + "DataId": 1011916, "Position": { - "X": 123.44939, - "Y": -60.88712, - "Z": -118.79085 + "X": 470.02356, + "Y": -49.89133, + "Z": 20.370789 }, "TerritoryId": 398, - "InteractionType": "WalkTo" + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1797, + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather", + "SkipConditions": { + "AetheryteShortcutIf": { + "QuestsCompleted": [ + 1797 + ] + } + } + }, + { + "DataId": 1011937, + "Position": { + "X": -305.56195, + "Y": 39.04307, + "Z": 22.9953 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1802, + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine", + "SkipConditions": { + "AetheryteShortcutIf": { + "QuestsCompleted": [ + 1802 + ] + } + } + }, + { + "Position": { + "X": 22.235865, + "Y": -24.754946, + "Z": -119.65716 + }, + "TerritoryId": 398, + "InteractionType": "WalkTo", + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" }, { "DataId": 1014544, @@ -106,7 +145,8 @@ "Z": -142.50409 }, "TerritoryId": 398, - "InteractionType": "CompleteQuest" + "InteractionType": "CompleteQuest", + "DisableNavmesh": true } ] } diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1617_Mourn in Passing.json b/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1617_Mourn in Passing.json index 449e0aaa..78abed7d 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1617_Mourn in Passing.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.2-The Dravanian Forelands/1617_Mourn in Passing.json @@ -12,7 +12,7 @@ "Y": -50.325172, "Z": -146.95972 }, - "StopDistance": 5, + "StopDistance": 7, "TerritoryId": 398, "InteractionType": "AcceptQuest" } diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1620_Moghan's Trial.json b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1620_Moghan's Trial.json index 46aac443..284166c7 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1620_Moghan's Trial.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1620_Moghan's Trial.json @@ -12,7 +12,7 @@ "Y": -69.42934, "Z": 693.5072 }, - "StopDistance": 5, + "StopDistance": 6.5, "TerritoryId": 400, "InteractionType": "AcceptQuest" } diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1621_Mogmug's Trial.json b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1621_Mogmug's Trial.json index 89f3196d..3c314d00 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1621_Mogmug's Trial.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1621_Mogmug's Trial.json @@ -31,6 +31,17 @@ "DisableNavmesh": true, "Mount": true }, + { + "DataId": 1012284, + "Position": { + "X": 363.24097, + "Y": -73.25598, + "Z": 678.4314 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1819 + }, { "Position": { "X": 286.46622, diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1623_Moglin's Judgment.json b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1623_Moglin's Judgment.json index 3379cf91..9f9f298d 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1623_Moglin's Judgment.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1623_Moglin's Judgment.json @@ -155,7 +155,7 @@ "Y": -69.42934, "Z": 693.5072 }, - "StopDistance": 5, + "StopDistance": 7, "TerritoryId": 400, "InteractionType": "CompleteQuest" } diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1624_Leaving Moghome.json b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1624_Leaving Moghome.json index 13b0b022..6fb671d3 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1624_Leaving Moghome.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1624_Leaving Moghome.json @@ -12,7 +12,7 @@ "Y": -69.42934, "Z": 693.5072 }, - "StopDistance": 5, + "StopDistance": 7, "TerritoryId": 400, "InteractionType": "AcceptQuest" } diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1625_The Road to Zenith.json b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1625_The Road to Zenith.json index 9b3ed0f6..5b023de8 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1625_The Road to Zenith.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1625_The Road to Zenith.json @@ -58,6 +58,25 @@ { "Sequence": 255, "Steps": [ + { + "DataId": 1012285, + "Position": { + "X": 247.11987, + "Y": -42.33362, + "Z": 565.3314 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1823, + "AetheryteShortcut": "The Churning Mists - Moghome", + "SkipConditions": { + "AetheryteShortcutIf": { + "QuestsCompleted": [ + 1823 + ] + } + } + }, { "DataId": 1013202, "Position": { diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1627_Heart of Ice.json b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1627_Heart of Ice.json index bfbead82..9712eb9d 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1627_Heart of Ice.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1627_Heart of Ice.json @@ -85,6 +85,7 @@ "Y": 123.72873, "Z": 210.74231 }, + "StopDistance": 7, "TerritoryId": 400, "InteractionType": "CompleteQuest" } diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1628_The Wyrm's Lair.json b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1628_The Wyrm's Lair.json index b6e26f82..31d0bfdb 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1628_The Wyrm's Lair.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1628_The Wyrm's Lair.json @@ -12,6 +12,7 @@ "Y": 123.72873, "Z": 210.74231 }, + "StopDistance": 7, "TerritoryId": 400, "InteractionType": "AcceptQuest" } diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1629_New Winds, Old Friends.json b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1629_New Winds, Old Friends.json index 61be6d80..1a39a37d 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1629_New Winds, Old Friends.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1629_New Winds, Old Friends.json @@ -20,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1013434, + "Position": { + "X": 517.9064, + "Y": -1.1917055, + "Z": -354.63495 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1835 + }, { "DataId": 1012720, "Position": { diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1630_A General Summons.json b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1630_A General Summons.json index 362321a5..61828e2c 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1630_A General Summons.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1630_A General Summons.json @@ -12,6 +12,7 @@ "Y": 16.979584, "Z": -37.521973 }, + "StopDistance": 7, "TerritoryId": 418, "InteractionType": "AcceptQuest" } @@ -58,6 +59,7 @@ "Y": 0, "Z": -3.1281738 }, + "StopDistance": 7, "TerritoryId": 212, "InteractionType": "Interact" } diff --git a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1635_The Song Begins.json b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1635_The Song Begins.json index 81bf09c6..7e8fcdb3 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1635_The Song Begins.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A3.3-The Churning Mists/1635_The Song Begins.json @@ -21,6 +21,25 @@ { "Sequence": 255, "Steps": [ + { + "DataId": 1013420, + "Position": { + "X": -511.46716, + "Y": 50, + "Z": 347.0968 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "The Churning Mists - Zenith", + "PickUpQuestId": 1828, + "SkipConditions": { + "AetheryteShortcutIf": { + "QuestsCompleted": [ + 1828 + ] + } + } + }, { "DataId": 1013172, "Position": { @@ -30,7 +49,6 @@ }, "TerritoryId": 400, "InteractionType": "CompleteQuest", - "AetheryteShortcut": "The Churning Mists - Zenith", "Fly": true } ] diff --git a/QuestPaths/3.x - Heavensward/MSQ/A4-Ishgard/1641_The Sins of Antiquity.json b/QuestPaths/3.x - Heavensward/MSQ/A4-Ishgard/1641_The Sins of Antiquity.json index 8450034b..c586d7d2 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A4-Ishgard/1641_The Sins of Antiquity.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A4-Ishgard/1641_The Sins of Antiquity.json @@ -21,6 +21,18 @@ { "Sequence": 255, "Steps": [ + { + "DataId": 1014720, + "Position": { + "X": 13.809326, + "Y": 15.96505, + "Z": -13.870483 + }, + "StopDistance": 7, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1874 + }, { "DataId": 1011223, "Position": { @@ -37,8 +49,9 @@ "Yes": true } ], + "AetheryteShortcut": "Ishgard", "AethernetShortcut": [ - "[Ishgard] The Last Vigil", + "[Ishgard] Aetheryte Plaza", "[Ishgard] The Forgotten Knight" ] }, diff --git a/QuestPaths/3.x - Heavensward/MSQ/A5-Sea of Clouds/1644_Familiar Faces.json b/QuestPaths/3.x - Heavensward/MSQ/A5-Sea of Clouds/1644_Familiar Faces.json index 822f3dde..c65d6815 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A5-Sea of Clouds/1644_Familiar Faces.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A5-Sea of Clouds/1644_Familiar Faces.json @@ -38,7 +38,7 @@ "Z": 113.54166 }, "TerritoryId": 401, - "InteractionType": "SinglePlayerDuty", + "InteractionType": "Emote", "Emote": "lookout", "StopDistance": 0.25 } @@ -54,10 +54,9 @@ "Z": 77.39858 }, "TerritoryId": 401, - "InteractionType": "Emote", + "InteractionType": "SinglePlayerDuty", "Emote": "lookout", - "StopDistance": 0.25, - "Comment": "Solo Duty triggered by emoting?" + "StopDistance": 0.25 } ] }, diff --git a/QuestPaths/3.x - Heavensward/MSQ/A5-Sea of Clouds/1647_Bolt, Chain, and Island.json b/QuestPaths/3.x - Heavensward/MSQ/A5-Sea of Clouds/1647_Bolt, Chain, and Island.json index e83bee3d..25028e99 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A5-Sea of Clouds/1647_Bolt, Chain, and Island.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A5-Sea of Clouds/1647_Bolt, Chain, and Island.json @@ -20,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1012069, + "Position": { + "X": -647.0283, + "Y": -51.05719, + "Z": -417.74628 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1909 + }, { "DataId": 1012064, "Position": { @@ -35,6 +46,17 @@ { "Sequence": 2, "Steps": [ + { + "DataId": 1012068, + "Position": { + "X": -597.0398, + "Y": -51.05185, + "Z": -387.0451 + }, + "TerritoryId": 401, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1910 + }, { "DataId": 2006231, "Position": { @@ -68,6 +90,7 @@ "Y": -14.730623, "Z": -537.56006 }, + "StopDistance": 7, "TerritoryId": 401, "InteractionType": "Interact", "DialogueChoices": [ @@ -100,7 +123,7 @@ "Y": -14.153766, "Z": -543.0228 }, - "StopDistance": 5, + "StopDistance": 7, "TerritoryId": 401, "InteractionType": "CompleteQuest" } diff --git a/QuestPaths/3.x - Heavensward/MSQ/A5-Sea of Clouds/1648_A Difference of Opinion.json b/QuestPaths/3.x - Heavensward/MSQ/A5-Sea of Clouds/1648_A Difference of Opinion.json index f4924843..27c692ab 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A5-Sea of Clouds/1648_A Difference of Opinion.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A5-Sea of Clouds/1648_A Difference of Opinion.json @@ -12,7 +12,7 @@ "Y": -14.153766, "Z": -543.0228 }, - "StopDistance": 5, + "StopDistance": 7, "TerritoryId": 401, "InteractionType": "AcceptQuest" } diff --git a/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1653_Tataru's Surprise.json b/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1653_Tataru's Surprise.json index 9285d55a..96b7dec9 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1653_Tataru's Surprise.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1653_Tataru's Surprise.json @@ -21,6 +21,15 @@ { "Sequence": 1, "Steps": [ + { + "Position": { + "X": 43.620056, + "Y": -7.9655867, + "Z": 103.63884 + }, + "TerritoryId": 132, + "InteractionType": "WalkTo" + }, { "DataId": 1000691, "Position": { diff --git a/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1654_Onward to Sharlayan.json b/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1654_Onward to Sharlayan.json index 92e5a36f..9d70443d 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1654_Onward to Sharlayan.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1654_Onward to Sharlayan.json @@ -45,7 +45,8 @@ }, "TerritoryId": 398, "InteractionType": "CompleteQuest", - "AetheryteShortcut": "The Dravanian Forelands - Tailfeather" + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather", + "Fly": true } ] } diff --git a/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1656_Golems Begone.json b/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1656_Golems Begone.json index 28768729..55c9f0b5 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1656_Golems Begone.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1656_Golems Begone.json @@ -27,6 +27,7 @@ "Y": 205.62819, "Z": 26.901611 }, + "StopDistance": 7, "TerritoryId": 478, "InteractionType": "Interact" } @@ -47,7 +48,15 @@ "$": "0 0 0 0 0 0 -> 1 0 0 0 0 64", "ChatMessage": { "Key": "TEXT_HEAVNA607_01656_SAYTODO_000" - } + }, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] }, { "DataId": 1012413, @@ -60,7 +69,15 @@ "InteractionType": "Say", "ChatMessage": { "Key": "TEXT_HEAVNA607_01656_SAYTODO_000" - } + }, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] } ] }, diff --git a/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1657_An Illuminati Incident.json b/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1657_An Illuminati Incident.json index f8924a38..9f25ebda 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1657_An Illuminati Incident.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1657_An Illuminati Incident.json @@ -20,6 +20,21 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1012287, + "Position": { + "X": -28.397034, + "Y": 100.969696, + "Z": -186.4195 + }, + "TerritoryId": 399, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1936, + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Epilogue Gate (Eastern Hinterlands)" + ] + }, { "DataId": 1012416, "Position": { diff --git a/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1658_Leaving Idyllshire.json b/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1658_Leaving Idyllshire.json index 973360b2..d4516d63 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1658_Leaving Idyllshire.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1658_Leaving Idyllshire.json @@ -20,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1012102, + "Position": { + "X": 72.40405, + "Y": 205.6815, + "Z": 31.631958 + }, + "TerritoryId": 478, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1945 + }, { "DataId": 1012419, "Position": { diff --git a/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1659_Matoya's Cave.json b/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1659_Matoya's Cave.json index 3c27ba55..c13a7192 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1659_Matoya's Cave.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1659_Matoya's Cave.json @@ -21,6 +21,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1012133, + "Position": { + "X": -26.840637, + "Y": 206.49944, + "Z": 28.67163 + }, + "TerritoryId": 478, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1963 + }, { "Position": { "X": 71.86769, @@ -29,18 +40,15 @@ }, "TerritoryId": 478, "InteractionType": "WalkTo", - "TargetTerritoryId": 399 - }, - { - "DataId": 2006210, - "Position": { - "X": -487.48004, - "Y": 144.64026, - "Z": -285.359 + "TargetTerritoryId": 399, + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 399 + ] + } }, - "TerritoryId": 399, - "InteractionType": "AttuneAetherCurrent", - "AetherCurrentId": 2818088 + "$": "Skipped if already in the Hinterlands, since 'Taking Stock' already leaves you closer to the entrance to Matoya's cave" }, { "DataId": 2006214, diff --git a/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1660_Forbidden Knowledge.json b/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1660_Forbidden Knowledge.json index 1a656cdf..cf7fe15e 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1660_Forbidden Knowledge.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1660_Forbidden Knowledge.json @@ -44,7 +44,7 @@ "Y": 38.43, "Z": 3.5552979 }, - "StopDistance": 7, + "StopDistance": 6, "TerritoryId": 463, "InteractionType": "Interact" } @@ -53,6 +53,17 @@ { "Sequence": 3, "Steps": [ + { + "DataId": 1012141, + "Position": { + "X": 35.690796, + "Y": 38.43, + "Z": 12.985352 + }, + "TerritoryId": 463, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 1966 + }, { "DataId": 2005337, "Position": { @@ -114,7 +125,8 @@ }, "TerritoryId": 399, "InteractionType": "WalkTo", - "DisableNavmesh": true + "DisableNavmesh": true, + "Mount": true }, { "DataId": 2005336, diff --git a/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1662_Hour of Departure.json b/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1662_Hour of Departure.json index ddf0e6ea..85aaee24 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1662_Hour of Departure.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A6-The Dravanian Hinterlands/1662_Hour of Departure.json @@ -28,6 +28,7 @@ "Y": -14.52896, "Z": 41.153564 }, + "StopDistance": 7, "TerritoryId": 419, "InteractionType": "Interact" } diff --git a/QuestPaths/3.x - Heavensward/MSQ/A7-Azys Lla/1663_The First Flight of the Excelsior.json b/QuestPaths/3.x - Heavensward/MSQ/A7-Azys Lla/1663_The First Flight of the Excelsior.json index 910a94e5..d5325ed2 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A7-Azys Lla/1663_The First Flight of the Excelsior.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A7-Azys Lla/1663_The First Flight of the Excelsior.json @@ -61,7 +61,8 @@ "Z": -659.2356 }, "TerritoryId": 402, - "InteractionType": "Interact" + "InteractionType": "Interact", + "DisableNavmesh": true } ] }, diff --git a/QuestPaths/3.x - Heavensward/MSQ/A7-Azys Lla/1666_Chimerical Maintenance.json b/QuestPaths/3.x - Heavensward/MSQ/A7-Azys Lla/1666_Chimerical Maintenance.json index f1727762..06fed283 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A7-Azys Lla/1666_Chimerical Maintenance.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A7-Azys Lla/1666_Chimerical Maintenance.json @@ -35,6 +35,15 @@ { "Sequence": 2, "Steps": [ + { + "Position": { + "X": 642.1002, + "Y": -32.964188, + "Z": -532.8383 + }, + "TerritoryId": 402, + "InteractionType": "WalkTo" + }, { "DataId": 2005568, "Position": { diff --git a/QuestPaths/3.x - Heavensward/MSQ/A7-Azys Lla/1667_Close Encounters of the VIth Kind.json b/QuestPaths/3.x - Heavensward/MSQ/A7-Azys Lla/1667_Close Encounters of the VIth Kind.json index 79d9235b..907bdd45 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A7-Azys Lla/1667_Close Encounters of the VIth Kind.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A7-Azys Lla/1667_Close Encounters of the VIth Kind.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "JerryWester", - "TerritoryBlacklist": [ - 459 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/3.x - Heavensward/MSQ/B-3.1/2163_As Goes Light, So Goes Darkness.json b/QuestPaths/3.x - Heavensward/MSQ/B-3.1/2163_As Goes Light, So Goes Darkness.json index f720da44..3b1d87a7 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/B-3.1/2163_As Goes Light, So Goes Darkness.json +++ b/QuestPaths/3.x - Heavensward/MSQ/B-3.1/2163_As Goes Light, So Goes Darkness.json @@ -94,6 +94,7 @@ "Y": 0.022254243, "Z": 4.623413 }, + "StopDistance": 7, "TerritoryId": 433, "InteractionType": "CompleteQuest" } diff --git a/QuestPaths/3.x - Heavensward/MSQ/D-3.3/2247_Litany of Peace.json b/QuestPaths/3.x - Heavensward/MSQ/D-3.3/2247_Litany of Peace.json index 192cc0cb..ee1c758c 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/D-3.3/2247_Litany of Peace.json +++ b/QuestPaths/3.x - Heavensward/MSQ/D-3.3/2247_Litany of Peace.json @@ -27,6 +27,7 @@ "Y": 24.458836, "Z": 0.62561035 }, + "StopDistance": 4, "TerritoryId": 418, "InteractionType": "Interact", "DialogueChoices": [ @@ -79,6 +80,7 @@ "Y": 0.022254243, "Z": 4.623413 }, + "StopDistance": 7, "TerritoryId": 433, "InteractionType": "CompleteQuest" } diff --git a/QuestPaths/3.x - Heavensward/MSQ/E-3.4/2348_Honorable Heroes.json b/QuestPaths/3.x - Heavensward/MSQ/E-3.4/2348_Honorable Heroes.json index e3a1b231..6be02d16 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/E-3.4/2348_Honorable Heroes.json +++ b/QuestPaths/3.x - Heavensward/MSQ/E-3.4/2348_Honorable Heroes.json @@ -78,6 +78,10 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 146, + "InteractionType": "EquipRecommended" + }, { "DataId": 1017762, "Position": { diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1821_A Pebble for Your Thoughts.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1821_A Pebble for Your Thoughts.json new file mode 100644 index 00000000..0d78e30d --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1821_A Pebble for Your Thoughts.json @@ -0,0 +1,120 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1014424, + "Position": { + "X": 357.47314, + "Y": 2.7662196, + "Z": 638.3002 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "The Churning Mists - Moghome", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "Fly": true + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1014425, + "Position": { + "X": 475.7915, + "Y": -4.4960318, + "Z": 722.13306 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1014427, + "Position": { + "X": 474.6012, + "Y": -4.4750566, + "Z": 721.5532 + }, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 769.16034, + "Y": -9.491294, + "Z": 286.96594 + }, + "TerritoryId": 400, + "InteractionType": "WalkTo", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 769.16034, + "Y": -9.491294, + "Z": 286.96594 + }, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4039 + ] + }, + { + "DataId": 1014426, + "Position": { + "X": 770.2295, + "Y": -9.491293, + "Z": 287.95288 + }, + "StopDistance": 7, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1014427, + "Position": { + "X": 474.6012, + "Y": -4.4750566, + "Z": 721.5532 + }, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 1824 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1824_Spineless Wadjets.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1824_Spineless Wadjets.json new file mode 100644 index 00000000..253bb3bc --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1824_Spineless Wadjets.json @@ -0,0 +1,190 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1014429, + "Position": { + "X": -77.34796, + "Y": -8.655561, + "Z": 165.23987 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "The Churning Mists - Moghome", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1014431, + "Position": { + "X": -77.37854, + "Y": -8.6555605, + "Z": 166.36902 + }, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1014430, + "Position": { + "X": 357.90027, + "Y": -29.897694, + "Z": -105.21106 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 318.27338, + "Y": -29.677633, + "Z": -148.89816 + }, + "TerritoryId": 400, + "InteractionType": "Combat", + "Fly": true, + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 4470, + "MinimumKillCount": 1 + } + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1014430, + "Position": { + "X": 357.90027, + "Y": -29.897694, + "Z": -105.21106 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "Position": { + "X": 293.52023, + "Y": -30.697027, + "Z": -167.88272 + }, + "TerritoryId": 400, + "InteractionType": "Combat", + "Fly": true, + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 4470, + "MinimumKillCount": 1 + } + ] + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1014430, + "Position": { + "X": 357.90027, + "Y": -29.897694, + "Z": -105.21106 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "Position": { + "X": 226.58783, + "Y": -36.917496, + "Z": -100.45467 + }, + "TerritoryId": 400, + "InteractionType": "Combat", + "Fly": true, + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 4470, + "MinimumKillCount": 1 + } + ] + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1014430, + "Position": { + "X": 357.90027, + "Y": -29.897694, + "Z": -105.21106 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1014431, + "Position": { + "X": -77.37854, + "Y": -8.6555605, + "Z": 166.36902 + }, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 1831 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1831_Far from Home.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1831_Far from Home.json new file mode 100644 index 00000000..79f6bdd1 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1831_Far from Home.json @@ -0,0 +1,155 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1014432, + "Position": { + "X": -625.8793, + "Y": 50, + "Z": 332.63135 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "The Churning Mists - Zenith" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1014436, + "Position": { + "X": -626.42865, + "Y": 49.999996, + "Z": 334.0658 + }, + "StopDistance": 7, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1014432, + "Position": { + "X": -625.8793, + "Y": 50, + "Z": 332.63135 + }, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": -473.00934, + "Y": 42.910698, + "Z": 361.0051 + }, + "TerritoryId": 400, + "InteractionType": "WalkTo" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -473.00934, + "Y": 42.910698, + "Z": 361.0051 + }, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4076 + ] + }, + { + "DataId": 1014433, + "Position": { + "X": -473.4112, + "Y": 42.91877, + "Z": 360.0061 + }, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "Position": { + "X": -177.2358, + "Y": -20.962738, + "Z": 266.31805 + }, + "TerritoryId": 400, + "InteractionType": "WalkTo", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "Position": { + "X": -177.2358, + "Y": -20.962738, + "Z": 266.31805 + }, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4076 + ] + }, + { + "DataId": 1014434, + "Position": { + "X": -177.11151, + "Y": -20.990452, + "Z": 266.5293 + }, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1014435, + "Position": { + "X": -109.056274, + "Y": -8.844471, + "Z": 209.3385 + }, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 1832 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1832_A Nutty Initiation.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1832_A Nutty Initiation.json new file mode 100644 index 00000000..4b768d93 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1832_A Nutty Initiation.json @@ -0,0 +1,118 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1014442, + "Position": { + "X": 455.28345, + "Y": -24.191578, + "Z": 109.05615 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest", + "Fly": true, + "AetheryteShortcut": "The Churning Mists - Moghome", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1014445, + "Position": { + "X": 455.2528, + "Y": -24.093994, + "Z": 109.88013 + }, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1014442, + "Position": { + "X": 455.28345, + "Y": -24.191578, + "Z": 109.05615 + }, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1012084, + "Position": { + "X": 225.54358, + "Y": 6.9602013, + "Z": 709.34607 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "AetheryteShortcut": "The Churning Mists - Moghome", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 391.38687, + "Y": -27.748926, + "Z": 113.191864 + }, + "TerritoryId": 400, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1014446, + "Position": { + "X": 389.7306, + "Y": -27.420471, + "Z": 114.06116 + }, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1012082, + "Position": { + "X": 381.70435, + "Y": -69.41491, + "Z": 691.5541 + }, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Churning Mists - Moghome", + "Fly": true, + "NextQuestId": 1863 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1863_Protecting the Pom.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1863_Protecting the Pom.json new file mode 100644 index 00000000..df979c20 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1863_Protecting the Pom.json @@ -0,0 +1,73 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1012082, + "Position": { + "X": 381.70435, + "Y": -69.41491, + "Z": 691.5541 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -6.1052914, + "Y": -20.632738, + "Z": 181.941 + }, + "StopDistance": 0.25, + "TerritoryId": 400, + "InteractionType": "Combat", + "Fly": true, + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 3999 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1014290, + "Position": { + "X": -6.302063, + "Y": -20.660929, + "Z": 181.75012 + }, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1014293, + "Position": { + "X": -106.889465, + "Y": 36.394444, + "Z": 186.1753 + }, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 1864 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1864_Save the Pomguard.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1864_Save the Pomguard.json new file mode 100644 index 00000000..5ca1311a --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1864_Save the Pomguard.json @@ -0,0 +1,107 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1014293, + "Position": { + "X": -106.889465, + "Y": 36.394444, + "Z": 186.1753 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest", + "Fly": true + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1014294, + "Position": { + "X": -369.64984, + "Y": 30.292116, + "Z": 423.0868 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -271.42133, + "Y": 41.099045, + "Z": 241.92078 + }, + "StopDistance": 0.25, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4076 + ], + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1014297, + "Position": { + "X": -271.44275, + "Y": 41.099045, + "Z": 242.20642 + }, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1014294, + "Position": { + "X": -369.64984, + "Y": 30.292116, + "Z": 423.0868 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1014300, + "Position": { + "X": -696.34546, + "Y": 79, + "Z": 269.00122 + }, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Churning Mists - Zenith", + "Fly": true, + "NextQuestId": 1865 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1865_An Urgent Message.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1865_An Urgent Message.json new file mode 100644 index 00000000..22ce709f --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1865_An Urgent Message.json @@ -0,0 +1,55 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1014300, + "Position": { + "X": -696.34546, + "Y": 79, + "Z": 269.00122 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest", + "Fly": true + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1014303, + "Position": { + "X": -811.8868, + "Y": 83.29895, + "Z": 219.3789 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1014304, + "Position": { + "X": -471.7937, + "Y": 39.90609, + "Z": 156.2981 + }, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 1866 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1866_An Uneasy Feeling.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1866_An Uneasy Feeling.json new file mode 100644 index 00000000..74b0eb0e --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1866_An Uneasy Feeling.json @@ -0,0 +1,128 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": -662.4473, + "Y": 73, + "Z": 172.12396 + }, + "TerritoryId": 400, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1014307, + "Position": { + "X": -661.40234, + "Y": 73, + "Z": 171.03833 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -611.016, + "Y": 81, + "Z": 142.83911 + }, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4045 + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "Position": { + "X": -627.9241, + "Y": 81, + "Z": 98.83264 + }, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4045 + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "Position": { + "X": -579.05023, + "Y": 80.999985, + "Z": 101.69408 + }, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4045 + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": -662.4473, + "Y": 73, + "Z": 172.12396 + }, + "TerritoryId": 400, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1014307, + "Position": { + "X": -661.40234, + "Y": 73, + "Z": 171.03833 + }, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "NextQuestId": 1867 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1867_A Moogle's Intuition.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1867_A Moogle's Intuition.json new file mode 100644 index 00000000..c15f99a0 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1867_A Moogle's Intuition.json @@ -0,0 +1,128 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": -745.7825, + "Y": 73, + "Z": 317.39563 + }, + "TerritoryId": 400, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1014308, + "Position": { + "X": -746.12036, + "Y": 73, + "Z": 318.7456 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -723.45496, + "Y": 81, + "Z": 378.70322 + }, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4045 + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "Position": { + "X": -722.5188, + "Y": 80.999985, + "Z": 427.1239 + }, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4045 + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "Position": { + "X": -765.2328, + "Y": 81, + "Z": 406.13608 + }, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4045 + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": -745.7825, + "Y": 73, + "Z": 317.39563 + }, + "TerritoryId": 400, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1014308, + "Position": { + "X": -746.12036, + "Y": 73, + "Z": 318.7456 + }, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "NextQuestId": 1868 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1868_Trouble at Zenith.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1868_Trouble at Zenith.json new file mode 100644 index 00000000..972ba8ed --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1868_Trouble at Zenith.json @@ -0,0 +1,76 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1014300, + "Position": { + "X": -696.34546, + "Y": 79, + "Z": 269.00122 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest", + "Fly": true + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1014310, + "Position": { + "X": -713.80176, + "Y": 343, + "Z": 238.94104 + }, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 4493 + ], + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1014311, + "Position": { + "X": -711.17725, + "Y": 342.0005, + "Z": 236.3164 + }, + "StopDistance": 5, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1012082, + "Position": { + "X": 381.70435, + "Y": -69.41491, + "Z": 691.5541 + }, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Churning Mists - Moghome", + "Fly": true, + "NextQuestId": 1872 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1871_Laying the First Brick.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1871_Laying the First Brick.json new file mode 100644 index 00000000..032518dc --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1871_Laying the First Brick.json @@ -0,0 +1,116 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013560, + "Position": { + "X": 15.609924, + "Y": 81.84059, + "Z": -317.37244 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2005821, + "Position": { + "X": 16.159302, + "Y": 82.1698, + "Z": -322.89618 + }, + "StopDistance": 4, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1013569, + "Position": { + "X": 330.73914, + "Y": 223.01535, + "Z": -480.36932 + }, + "StopDistance": 1, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1012163, + "Position": { + "X": 128.25195, + "Y": 24.458832, + "Z": -0.6867676 + }, + "TerritoryId": 418, + "InteractionType": "Interact", + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] The Forgotten Knight" + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 380.00024, + "Y": -69.42949, + "Z": 694.65753 + }, + "TerritoryId": 400, + "InteractionType": "WalkTo", + "AetheryteShortcut": "The Churning Mists - Moghome" + }, + { + "DataId": 1012077, + "Position": { + "X": 381.70435, + "Y": -66.84979, + "Z": 700.86194 + }, + "StopDistance": 8, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1014314, + "Position": { + "X": 12.100342, + "Y": 81.8406, + "Z": -318.0133 + }, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1872_Into the Mists.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1872_Into the Mists.json new file mode 100644 index 00000000..546bf2f8 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1872_Into the Mists.json @@ -0,0 +1,87 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013557, + "Position": { + "X": 9.6588745, + "Y": 15.96505, + "Z": -7.4921875 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] The Last Vigil" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1012163, + "Position": { + "X": 128.25195, + "Y": 24.458832, + "Z": -0.6867676 + }, + "TerritoryId": 418, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ishgard] The Last Vigil", + "[Ishgard] The Forgotten Knight" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1013559, + "Position": { + "X": 129.22852, + "Y": 24.397108, + "Z": -1.9379272 + }, + "StopDistance": 5, + "TerritoryId": 418, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013560, + "Position": { + "X": 15.609924, + "Y": 81.84059, + "Z": -317.37244 + }, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "The Churning Mists - Moghome", + "Fly": true, + "NextQuestId": 1878 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1878_Bitter Is the Night.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1878_Bitter Is the Night.json new file mode 100644 index 00000000..fcafa8c3 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1878_Bitter Is the Night.json @@ -0,0 +1,112 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013560, + "Position": { + "X": 15.609924, + "Y": 81.84059, + "Z": -317.37244 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -40.84487, + "Y": 62.87995, + "Z": -293.59937 + }, + "StopDistance": 0.5, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4044 + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "Position": { + "X": -49.8887, + "Y": 76.75615, + "Z": -348.67075 + }, + "StopDistance": 0.5, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4044 + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "Position": { + "X": -10.931383, + "Y": 76.75615, + "Z": -249.3747 + }, + "StopDistance": 0.5, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4044 + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013560, + "Position": { + "X": 15.609924, + "Y": 81.84059, + "Z": -317.37244 + }, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 1881 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1879_These Things Take Time.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1879_These Things Take Time.json new file mode 100644 index 00000000..329f332b --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1879_These Things Take Time.json @@ -0,0 +1,76 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013560, + "Position": { + "X": 15.609924, + "Y": 81.84059, + "Z": -317.37244 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1013566, + "Position": { + "X": -753.59735, + "Y": 285.65656, + "Z": -168.65796 + }, + "StopDistance": 0.25, + "TerritoryId": 400, + "InteractionType": "Interact", + "AetheryteShortcut": "The Churning Mists - Zenith", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -734.0618, + "Y": 258.66254, + "Z": -178.1613 + }, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "KillEnemyDataIds": [ + 4044 + ], + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013566, + "Position": { + "X": -753.59735, + "Y": 285.65656, + "Z": -168.65796 + }, + "StopDistance": 0.25, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 1883 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1880_Thar Be Dragons.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1880_Thar Be Dragons.json new file mode 100644 index 00000000..a74c5124 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1880_Thar Be Dragons.json @@ -0,0 +1,57 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013567, + "Position": { + "X": 15.609924, + "Y": 81.84059, + "Z": -317.37244 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -131.11111, + "Y": -64.89958, + "Z": -321.4496 + }, + "StopDistance": 0.5, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 4505 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013560, + "Position": { + "X": 15.609924, + "Y": 81.84059, + "Z": -317.37244 + }, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 1871 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1881_Cleaning House.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1881_Cleaning House.json new file mode 100644 index 00000000..81661277 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1881_Cleaning House.json @@ -0,0 +1,88 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013560, + "Position": { + "X": 15.609924, + "Y": 81.84059, + "Z": -317.37244 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1013569, + "Position": { + "X": 330.73914, + "Y": 223.01535, + "Z": -480.36932 + }, + "StopDistance": 1, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 315.91586, + "Y": 234.0008, + "Z": -617.9445 + }, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 4469, + "MinimumKillCount": 3, + "CompletionQuestVariablesFlags": [ + { + "Low": 3 + }, + null, + null, + null, + null, + null + ] + } + ], + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013569, + "Position": { + "X": 330.73914, + "Y": 223.01535, + "Z": -480.36932 + }, + "StopDistance": 1, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 1882 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1882_Finders Keepers.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1882_Finders Keepers.json new file mode 100644 index 00000000..b1aef8de --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1882_Finders Keepers.json @@ -0,0 +1,119 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013569, + "Position": { + "X": 330.73914, + "Y": 223.01535, + "Z": -480.36932 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 159.85898, + "Y": 212.64731, + "Z": -734.95905 + }, + "TerritoryId": 400, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + } + }, + { + "DataId": 2005805, + "Position": { + "X": 161.39453, + "Y": 212.6344, + "Z": -733.7301 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2005806, + "Position": { + "X": 110.52112, + "Y": 212.6344, + "Z": -785.15295 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1013569, + "Position": { + "X": 330.73914, + "Y": 223.01535, + "Z": -480.36932 + }, + "StopDistance": 1, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013560, + "Position": { + "X": 15.609924, + "Y": 81.84059, + "Z": -317.37244 + }, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 1879 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1883_An Unwelcome Surprise.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1883_An Unwelcome Surprise.json new file mode 100644 index 00000000..d7f9098d --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1883_An Unwelcome Surprise.json @@ -0,0 +1,111 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013566, + "Position": { + "X": -753.59735, + "Y": 285.65656, + "Z": -168.65796 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1013570, + "Position": { + "X": -556.4203, + "Y": 266.003, + "Z": -673.7926 + }, + "StopDistance": 0.25, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -568.1701, + "Y": 258.0283, + "Z": -651.9808 + }, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 4044, + "MinimumKillCount": 3 + } + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + { + "Low": 3 + }, + null, + null, + null, + null, + null + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": -568.1701, + "Y": 258.0283, + "Z": -651.9808 + }, + "StopDistance": 100, + "TerritoryId": 400, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 4044, + "MinimumKillCount": 1 + } + ], + "$": "This is a separate quest sequence, but it just does the same thing as sequence 2?" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013570, + "Position": { + "X": -556.4203, + "Y": 266.003, + "Z": -673.7926 + }, + "StopDistance": 0.25, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 1884 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1884_A Meter Too Far.json b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1884_A Meter Too Far.json new file mode 100644 index 00000000..4beee70f --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Quests/The Churning Mists/1884_A Meter Too Far.json @@ -0,0 +1,243 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013570, + "Position": { + "X": -556.4203, + "Y": 266.003, + "Z": -673.7926 + }, + "TerritoryId": 400, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2005812, + "Position": { + "X": -757.4121, + "Y": 257.49585, + "Z": -702.57117 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2005811, + "Position": { + "X": -815.4879, + "Y": 258.0758, + "Z": -674.9218 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2005813, + "Position": { + "X": -788.0522, + "Y": 257.67908, + "Z": -644.1901 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1013570, + "Position": { + "X": -556.4203, + "Y": 266.003, + "Z": -673.7926 + }, + "StopDistance": 0.25, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1013566, + "Position": { + "X": -753.59735, + "Y": 285.65656, + "Z": -168.65796 + }, + "StopDistance": 0.25, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2005814, + "Position": { + "X": -755.9472, + "Y": 258.80823, + "Z": -207.72113 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2005816, + "Position": { + "X": -698.024, + "Y": 258.28943, + "Z": -221.66785 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 2005815, + "Position": { + "X": -701.83875, + "Y": 258.53357, + "Z": -165.23999 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1013566, + "Position": { + "X": -753.59735, + "Y": 285.65656, + "Z": -168.65796 + }, + "StopDistance": 0.25, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1013567, + "Position": { + "X": 15.609924, + "Y": 81.84059, + "Z": -317.37244 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 2005817, + "Position": { + "X": 16.159302, + "Y": 82.1698, + "Z": -322.89618 + }, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013567, + "Position": { + "X": 15.609924, + "Y": 81.84059, + "Z": -317.37244 + }, + "TerritoryId": 400, + "InteractionType": "CompleteQuest", + "NextQuestId": 1880 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Stories/Doman Adventurer's Guild/100_Short Arms of the Law.json b/QuestPaths/3.x - Heavensward/Side Stories/Doman Adventurer's Guild/100_Short Arms of the Law.json new file mode 100644 index 00000000..51cbb57a --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Stories/Doman Adventurer's Guild/100_Short Arms of the Law.json @@ -0,0 +1,141 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1009813, + "Position": { + "X": 55.436035, + "Y": 31.187548, + "Z": -763.42413 + }, + "TerritoryId": 156, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1009828, + "Position": { + "X": 64.95764, + "Y": 20.487333, + "Z": -641.01624 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1009831, + "Position": { + "X": -58.487915, + "Y": 3.4366195, + "Z": -645.655 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1009835, + "Position": { + "X": -103.379944, + "Y": -1.3236009, + "Z": -615.9304 + }, + "TerritoryId": 156, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 3565, + 4619, + 5044 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1009835, + "Position": { + "X": -103.379944, + "Y": -1.3236009, + "Z": -615.9304 + }, + "TerritoryId": 156, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 2004633, + "Position": { + "X": -98.74121, + "Y": -0.015319824, + "Z": -616.5408 + }, + "TerritoryId": 156, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1009839, + "Position": { + "X": -95.780945, + "Y": -0.42092213, + "Z": -625.6962 + }, + "TerritoryId": 156, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006530, + "Position": { + "X": 21.927185, + "Y": 20.746975, + "Z": -682.06305 + }, + "TerritoryId": 156, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Stories/Doman Adventurer's Guild/45_Toll Booty.json b/QuestPaths/3.x - Heavensward/Side Stories/Doman Adventurer's Guild/45_Toll Booty.json new file mode 100644 index 00000000..500e5e6a --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Stories/Doman Adventurer's Guild/45_Toll Booty.json @@ -0,0 +1,166 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1009812, + "Position": { + "X": 74.08252, + "Y": 30.549389, + "Z": -720.9735 + }, + "TerritoryId": 156, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 26.405773, + "Y": 29.49983, + "Z": -767.3998 + }, + "TerritoryId": 156, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "Position": { + "X": 25.629164, + "Y": 28.999998, + "Z": -823.2204 + }, + "TerritoryId": 156, + "InteractionType": "WalkTo" + }, + { + "DataId": 1001304, + "Position": { + "X": 25.589355, + "Y": 29, + "Z": -825.37573 + }, + "TerritoryId": 156, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2004628, + "Position": { + "X": 50.614136, + "Y": 31.143677, + "Z": -748.40924 + }, + "TerritoryId": 156, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2004631, + "Position": { + "X": -127.55017, + "Y": -1.9379272, + "Z": -638.4833 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -165.20372, + "Y": 11.28438, + "Z": -619.29504 + }, + "TerritoryId": 156, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2004629, + "Position": { + "X": -166.79645, + "Y": 12.283508, + "Z": -619.8978 + }, + "TerritoryId": 156, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1009817, + "Position": { + "X": -130.1748, + "Y": -0.85852593, + "Z": -645.2583 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1006530, + "Position": { + "X": 21.927185, + "Y": 20.746975, + "Z": -682.06305 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1009813, + "Position": { + "X": 55.436035, + "Y": 31.187548, + "Z": -763.42413 + }, + "TerritoryId": 156, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 50 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Stories/Doman Adventurer's Guild/50_Li'l Rascals.json b/QuestPaths/3.x - Heavensward/Side Stories/Doman Adventurer's Guild/50_Li'l Rascals.json new file mode 100644 index 00000000..9d629199 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Stories/Doman Adventurer's Guild/50_Li'l Rascals.json @@ -0,0 +1,212 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1009813, + "Position": { + "X": 55.436035, + "Y": 31.187548, + "Z": -763.42413 + }, + "TerritoryId": 156, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1009812, + "Position": { + "X": 74.08252, + "Y": 30.549389, + "Z": -720.9735 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1006530, + "Position": { + "X": 21.927185, + "Y": 20.746975, + "Z": -682.06305 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1009825, + "Position": { + "X": 86.07605, + "Y": 28.34813, + "Z": -622.18665 + }, + "StopDistance": 0.5, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "Position": { + "X": 30.917934, + "Y": 20.495003, + "Z": -656.1909 + }, + "TerritoryId": 156, + "InteractionType": "WalkTo", + "Fly": true, + "$": "Rising Stones Door", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + } + } + }, + { + "DataId": 1009826, + "Position": { + "X": 29.160034, + "Y": 21.252728, + "Z": -642.51166 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + }, + { + "Position": { + "X": 30.917934, + "Y": 20.495003, + "Z": -656.1909 + }, + "TerritoryId": 156, + "InteractionType": "WalkTo", + "Mount": true, + "$": "Rising Stones Door" + }, + { + "Position": { + "X": 18.883974, + "Y": 53.583996, + "Z": -702.24194 + }, + "TerritoryId": 156, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + } + }, + { + "DataId": 1009823, + "Position": { + "X": 16.983276, + "Y": 53.614998, + "Z": -703.3341 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1009824, + "Position": { + "X": 22.262878, + "Y": 28.999968, + "Z": -780.85 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1009813, + "Position": { + "X": 55.436035, + "Y": 31.187548, + "Z": -763.42413 + }, + "TerritoryId": 156, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 100 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2226_A Gentleman Falls, Rather than Flies.json b/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2226_A Gentleman Falls, Rather than Flies.json new file mode 100644 index 00000000..e0b00111 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2226_A Gentleman Falls, Rather than Flies.json @@ -0,0 +1,238 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016597, + "Position": { + "X": -266.71252, + "Y": -20.034918, + "Z": -66.42261 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] The Jeweled Crozier" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InTerritory": [ + 419 + ], + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -258.68442, + "Y": -20.03493, + "Z": -66.1965 + }, + "TerritoryId": 419, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + } + }, + { + "DataId": 1011207, + "Position": { + "X": -258.8083, + "Y": -20.03509, + "Z": -63.553833 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "Position": { + "X": -226.53459, + "Y": -16.134916, + "Z": -51.93084 + }, + "TerritoryId": 419, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + } + }, + { + "DataId": 1011202, + "Position": { + "X": -228.10712, + "Y": -16.034918, + "Z": -49.912292 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "Position": { + "X": -205.36649, + "Y": -16.134916, + "Z": -51.418564 + }, + "TerritoryId": 419, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + } + }, + { + "DataId": 1011204, + "Position": { + "X": -203.6012, + "Y": -16.034918, + "Z": -53.23877 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1012180, + "Position": { + "X": -174.18176, + "Y": -12.555469, + "Z": -21.561035 + }, + "TerritoryId": 419, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1015596, + "Position": { + "X": 15.915161, + "Y": 15.96505, + "Z": -0.22894287 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ishgard] The Jeweled Crozier", + "[Ishgard] The Last Vigil" + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2006709, + "Position": { + "X": 38.80359, + "Y": 16.494995, + "Z": -31.204712 + }, + "TerritoryId": 419, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1011231, + "Position": { + "X": 503.1051, + "Y": 217.95148, + "Z": 790.2189 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "AetheryteShortcut": "Coerthas Western Highlands - Falcon's Nest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 2006753, + "Position": { + "X": -217.05963, + "Y": 88.09033, + "Z": -585.2598 + }, + "TerritoryId": 397, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 2227 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2227_Don't Call It a Comeback.json b/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2227_Don't Call It a Comeback.json new file mode 100644 index 00000000..416cbf97 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2227_Don't Call It a Comeback.json @@ -0,0 +1,119 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016604, + "Position": { + "X": -222.24768, + "Y": 88.525505, + "Z": -582.8794 + }, + "StopDistance": 7, + "TerritoryId": 397, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016629, + "Position": { + "X": 409.9336, + "Y": 166.24477, + "Z": -448.661 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1016612, + "Position": { + "X": 757.83923, + "Y": 186.03809, + "Z": -538.26196 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 789.0687, + "Y": 186.03352, + "Z": -529.4571 + }, + "TerritoryId": 397, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 5536 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2006763, + "Position": { + "X": 789.2728, + "Y": 186.44995, + "Z": -529.3507 + }, + "TerritoryId": 397, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1016617, + "Position": { + "X": 790.3716, + "Y": 186.03076, + "Z": -527.0314 + }, + "TerritoryId": 397, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016619, + "Position": { + "X": -66.84979, + "Y": 8.05915, + "Z": 9.506287 + }, + "TerritoryId": 418, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ishgard", + "NextQuestId": 2228 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2228_The Gigi Situation.json b/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2228_The Gigi Situation.json new file mode 100644 index 00000000..35bdbb10 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2228_The Gigi Situation.json @@ -0,0 +1,114 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016619, + "Position": { + "X": -66.84979, + "Y": 8.05915, + "Z": 9.506287 + }, + "TerritoryId": 418, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016600, + "Position": { + "X": 46.097534, + "Y": 15.8650675, + "Z": -27.298462 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] The Last Vigil" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1017131, + "Position": { + "X": 35.446655, + "Y": 15.965061, + "Z": -96.75751 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ishgard] The Last Vigil", + "[Ishgard] The Tribunal" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1017278, + "Position": { + "X": -158.31238, + "Y": 2.0333426, + "Z": -10.635559 + }, + "TerritoryId": 418, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ishgard] The Tribunal", + "[Ishgard] Skysteel Manufactory" + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1016607, + "Position": { + "X": -260.12054, + "Y": -20.035, + "Z": -66.14789 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ishgard] Skysteel Manufactory", + "[Ishgard] The Jeweled Crozier" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016608, + "Position": { + "X": -261.0971, + "Y": -20.03499, + "Z": -66.11737 + }, + "StopDistance": 5, + "TerritoryId": 419, + "InteractionType": "CompleteQuest", + "NextQuestId": 2229 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2229_The Measure of a Mammet.json b/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2229_The Measure of a Mammet.json new file mode 100644 index 00000000..88ac8dfb --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2229_The Measure of a Mammet.json @@ -0,0 +1,138 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016608, + "Position": { + "X": -261.0971, + "Y": -20.03499, + "Z": -66.11737 + }, + "StopDistance": 5, + "TerritoryId": 419, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1011225, + "Position": { + "X": -170.6112, + "Y": 16.979578, + "Z": -37.125244 + }, + "TerritoryId": 418, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ishgard] The Jeweled Crozier", + "[Ishgard] Skysteel Manufactory" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1017133, + "Position": { + "X": 408.07202, + "Y": 195.66847, + "Z": 585.3512 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "AetheryteShortcut": "Coerthas Western Highlands - Falcon's Nest", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2007180, + "Position": { + "X": 262.10425, + "Y": 163.31726, + "Z": 295.67407 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1017274, + "Position": { + "X": 164.53796, + "Y": 166.2741, + "Z": 181.32288 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1017274, + "Position": { + "X": 164.53796, + "Y": 166.2741, + "Z": 181.32288 + }, + "TerritoryId": 397, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1017277, + "Position": { + "X": 163.13416, + "Y": 166.2741, + "Z": 179.4613 + }, + "StopDistance": 5, + "TerritoryId": 397, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016619, + "Position": { + "X": -66.84979, + "Y": 8.05915, + "Z": 9.506287 + }, + "TerritoryId": 418, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ishgard", + "NextQuestId": 2369 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2369_A Gazebo to Call Our Own.json b/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2369_A Gazebo to Call Our Own.json new file mode 100644 index 00000000..fc1d57ed --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2369_A Gazebo to Call Our Own.json @@ -0,0 +1,228 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016619, + "Position": { + "X": -66.84979, + "Y": 8.05915, + "Z": 9.506287 + }, + "TerritoryId": 418, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1017959, + "Position": { + "X": 39.505493, + "Y": 16.49931, + "Z": -29.922974 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] The Last Vigil" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1017962, + "Position": { + "X": 4.837097, + "Y": 11.964993, + "Z": 31.296265 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1017963, + "Position": { + "X": 21.683044, + "Y": 11.965154, + "Z": 47.68445 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1017964, + "Position": { + "X": -40.634766, + "Y": 11.965008, + "Z": 32.028687 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1017968, + "Position": { + "X": -43.778137, + "Y": 11.965093, + "Z": 47.348755 + }, + "TerritoryId": 419, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1017970, + "Position": { + "X": 132.43298, + "Y": 205.99544, + "Z": 80.9491 + }, + "TerritoryId": 478, + "InteractionType": "Interact", + "AetheryteShortcut": "Idyllshire" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1012099, + "Position": { + "X": 50.278442, + "Y": 206.04715, + "Z": 57.75537 + }, + "TerritoryId": 478, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1012299, + "Position": { + "X": -16.586609, + "Y": 206.49942, + "Z": 42.98462 + }, + "StopDistance": 5, + "TerritoryId": 478, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "Position": { + "X": -2.76668, + "Y": 205.81511, + "Z": 24.614613 + }, + "TerritoryId": 478, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + } + }, + { + "DataId": 1017977, + "Position": { + "X": -0.7172241, + "Y": 206.49947, + "Z": 20.09607 + }, + "StopDistance": 7, + "TerritoryId": 478, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1017981, + "Position": { + "X": 10.208252, + "Y": 206.77286, + "Z": 62.394165 + }, + "TerritoryId": 478, + "InteractionType": "CompleteQuest", + "NextQuestId": 2370 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2370_Don't Trust Anyone over Sixty.json b/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2370_Don't Trust Anyone over Sixty.json new file mode 100644 index 00000000..f5a29229 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2370_Don't Trust Anyone over Sixty.json @@ -0,0 +1,213 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1017983, + "Position": { + "X": 11.520508, + "Y": 207.49994, + "Z": 85.34363 + }, + "StopDistance": 7, + "TerritoryId": 478, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1017988, + "Position": { + "X": -544.1825, + "Y": 144.84157, + "Z": -346.7918 + }, + "TerritoryId": 399, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1017993, + "Position": { + "X": -544.1825, + "Y": 144.84157, + "Z": -346.7918 + }, + "TerritoryId": 399, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1017997, + "Position": { + "X": -595.48334, + "Y": 147.9601, + "Z": -37.43042 + }, + "TerritoryId": 399, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1018005, + "Position": { + "X": -761.31836, + "Y": 149.64381, + "Z": 16.739136 + }, + "TerritoryId": 399, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1018005, + "Position": { + "X": -761.31836, + "Y": 149.64381, + "Z": 16.739136 + }, + "TerritoryId": 399, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1018122, + "Position": { + "X": -761.2573, + "Y": 149.64243, + "Z": 16.80011 + }, + "TerritoryId": 399, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1018122, + "Position": { + "X": -761.2573, + "Y": 149.64243, + "Z": 16.80011 + }, + "TerritoryId": 399, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1018122, + "Position": { + "X": -761.2573, + "Y": 149.64243, + "Z": 16.80011 + }, + "TerritoryId": 399, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 9, + "Steps": [ + { + "DataId": 1018122, + "Position": { + "X": -761.2573, + "Y": 149.64243, + "Z": 16.80011 + }, + "TerritoryId": 399, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 10, + "Steps": [ + { + "DataId": 1017997, + "Position": { + "X": -595.48334, + "Y": 147.9601, + "Z": -37.43042 + }, + "TerritoryId": 399, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 11, + "Steps": [ + { + "DataId": 1018007, + "Position": { + "X": -602.5941, + "Y": 147.58852, + "Z": -39.230957 + }, + "StopDistance": 7, + "TerritoryId": 399, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1016619, + "Position": { + "X": -66.84979, + "Y": 8.05915, + "Z": 9.506287 + }, + "TerritoryId": 418, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ishgard", + "NextQuestId": 2371 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2371_The Proud and the Pointy-eyed.json b/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2371_The Proud and the Pointy-eyed.json new file mode 100644 index 00000000..75850c08 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2371_The Proud and the Pointy-eyed.json @@ -0,0 +1,187 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1016619, + "Position": { + "X": -66.84979, + "Y": 8.05915, + "Z": 9.506287 + }, + "TerritoryId": 418, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1018448, + "Position": { + "X": 11.48999, + "Y": 206.58485, + "Z": 76.157715 + }, + "TerritoryId": 478, + "InteractionType": "Interact", + "AetheryteShortcut": "Idyllshire" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1018451, + "Position": { + "X": 606.775, + "Y": -49.501324, + "Z": 40.482178 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1011920, + "Position": { + "X": 519.8595, + "Y": -51.071976, + "Z": 88.24292 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1011921, + "Position": { + "X": 453.36072, + "Y": -51.141403, + "Z": 58.579346 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "Position": { + "X": 493.00256, + "Y": -51.02798, + "Z": 16.711847 + }, + "TerritoryId": 398, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + } + }, + { + "DataId": 1011919, + "Position": { + "X": 497.82556, + "Y": -49.790283, + "Z": 11.825684 + }, + "StopDistance": 7, + "TerritoryId": 398, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1018454, + "Position": { + "X": 549.18726, + "Y": -51.275715, + "Z": 6.1798096 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1018460, + "Position": { + "X": -108.659546, + "Y": -35.633152, + "Z": -19.485779 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1018460, + "Position": { + "X": -108.659546, + "Y": -35.633152, + "Z": -19.485779 + }, + "TerritoryId": 398, + "InteractionType": "CompleteQuest", + "NextQuestId": 2372 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2372_If I Could Turn Back Time.json b/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2372_If I Could Turn Back Time.json new file mode 100644 index 00000000..2fa5e8ed --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Side Stories/Hildibrand/2372_If I Could Turn Back Time.json @@ -0,0 +1,162 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1018463, + "Position": { + "X": -108.62903, + "Y": -35.63229, + "Z": -19.455322 + }, + "TerritoryId": 398, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1018468, + "Position": { + "X": -559.7162, + "Y": 48, + "Z": 304.5243 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "AetheryteShortcut": "The Churning Mists - Zenith" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1018468, + "Position": { + "X": -559.7162, + "Y": 48, + "Z": 304.5243 + }, + "TerritoryId": 400, + "InteractionType": "UseItem", + "ItemId": 2002034 + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1018468, + "Position": { + "X": -559.7162, + "Y": 48, + "Z": 304.5243 + }, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1018468, + "Position": { + "X": -559.7162, + "Y": 48, + "Z": 304.5243 + }, + "TerritoryId": 400, + "InteractionType": "UseItem", + "ItemId": 2002047 + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1018468, + "Position": { + "X": -559.7162, + "Y": 48, + "Z": 304.5243 + }, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1018468, + "Position": { + "X": -559.7162, + "Y": 48, + "Z": 304.5243 + }, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1018468, + "Position": { + "X": -559.7162, + "Y": 48, + "Z": 304.5243 + }, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1018459, + "Position": { + "X": -673.8232, + "Y": 73, + "Z": 288.4718 + }, + "StopDistance": 5, + "TerritoryId": 400, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1018456, + "Position": { + "X": 13.595764, + "Y": 206.59943, + "Z": 77.28699 + }, + "TerritoryId": 478, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Idyllshire", + "NextQuestId": 3008 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Trial Quests/2114_Gods of Eld.json b/QuestPaths/3.x - Heavensward/Trial Quests/2114_Gods of Eld.json new file mode 100644 index 00000000..41a2b3c2 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Trial Quests/2114_Gods of Eld.json @@ -0,0 +1,73 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1012217, + "Position": { + "X": 25.925049, + "Y": 15.8650675, + "Z": 19.394226 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] The Last Vigil" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 419 + ] + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "TerritoryId": 156, + "DataId": 2002881, + "Position": { + "X": 21.133728, + "Y": 22.323914, + "Z": -631.281 + }, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "AetheryteShortcut": "Mor Dhona" + }, + { + "DataId": 2002878, + "Position": { + "X": -0.015319824, + "Y": -1.0223389, + "Z": -26.779602 + }, + "TerritoryId": 351, + "InteractionType": "Interact", + "TargetTerritoryId": 351 + }, + { + "DataId": 2006287, + "Position": { + "X": 0.015197754, + "Y": -1.9990234, + "Z": -40.909485 + }, + "TerritoryId": 351, + "InteractionType": "CompleteQuest", + "NextQuestId": 2230 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Trial Quests/2115_The Diabolical Bismarck.json b/QuestPaths/3.x - Heavensward/Trial Quests/2115_The Diabolical Bismarck.json new file mode 100644 index 00000000..594395aa --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Trial Quests/2115_The Diabolical Bismarck.json @@ -0,0 +1,187 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "TerritoryId": 156, + "DataId": 2002881, + "Position": { + "X": 21.133728, + "Y": 22.323914, + "Z": -631.281 + }, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 351 + ] + }, + "AetheryteShortcutIf": { + "InTerritory": [ + 351 + ] + } + } + }, + { + "DataId": 2002878, + "Position": { + "X": -0.015319824, + "Y": -1.0223389, + "Z": -26.779602 + }, + "TerritoryId": 351, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "SkipConditions": { + "StepIf": { + "ExtraCondition": "RisingStonesSolar" + } + } + }, + { + "DataId": 1014565, + "Position": { + "X": 0.44250488, + "Y": -1.9957249, + "Z": -43.22882 + }, + "StopDistance": 7, + "TerritoryId": 351, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1012064, + "Position": { + "X": -542.7787, + "Y": -37.11544, + "Z": -386.7094 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1014623, + "Position": { + "X": -808.8655, + "Y": -57.761612, + "Z": 159.5636 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 367.30618, + "Y": 141.31621, + "Z": 258.9364 + }, + "TerritoryId": 401, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2006288, + "Position": { + "X": 369.55823, + "Y": 143.17542, + "Z": 260.70032 + }, + "StopDistance": 4, + "TerritoryId": 401, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "TerritoryId": 401, + "InteractionType": "Duty", + "ContentFinderConditionId": 89 + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1012064, + "Position": { + "X": -542.7787, + "Y": -37.11544, + "Z": -386.7094 + }, + "TerritoryId": 401, + "InteractionType": "Interact", + "AetheryteShortcut": "The Sea of Clouds - Ok' Zundu", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "TerritoryId": 156, + "DataId": 2002881, + "Position": { + "X": 21.133728, + "Y": 22.323914, + "Z": -631.281 + }, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "AetheryteShortcut": "Mor Dhona" + }, + { + "DataId": 2002878, + "Position": { + "X": -0.015319824, + "Y": -1.0223389, + "Z": -26.779602 + }, + "TerritoryId": 351, + "InteractionType": "Interact", + "TargetTerritoryId": 351 + }, + { + "DataId": 1014565, + "Position": { + "X": 0.44250488, + "Y": -1.9957249, + "Z": -43.22882 + }, + "StopDistance": 7, + "TerritoryId": 351, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Trial Quests/2116_Thok Around the Clock.json b/QuestPaths/3.x - Heavensward/Trial Quests/2116_Thok Around the Clock.json new file mode 100644 index 00000000..6caec65e --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Trial Quests/2116_Thok Around the Clock.json @@ -0,0 +1,190 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "TerritoryId": 156, + "DataId": 2002881, + "Position": { + "X": 21.133728, + "Y": 22.323914, + "Z": -631.281 + }, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 351 + ] + }, + "AetheryteShortcutIf": { + "InTerritory": [ + 351 + ] + } + } + }, + { + "DataId": 2002878, + "Position": { + "X": -0.015319824, + "Y": -1.0223389, + "Z": -26.779602 + }, + "TerritoryId": 351, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "SkipConditions": { + "StepIf": { + "ExtraCondition": "RisingStonesSolar" + } + } + }, + { + "DataId": 1014565, + "Position": { + "X": 0.44250488, + "Y": -1.9957249, + "Z": -43.22882 + }, + "StopDistance": 7, + "TerritoryId": 351, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 73.307335, + "Y": -49.128403, + "Z": -142.59073 + }, + "TerritoryId": 398, + "InteractionType": "WalkTo", + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather", + "Fly": true + }, + { + "DataId": 1011928, + "Position": { + "X": 73.19751, + "Y": -49.19563, + "Z": -139.05548 + }, + "StopDistance": 4, + "TerritoryId": 398, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 258.42062, + "Y": -112.936935, + "Z": 924.15704 + }, + "TerritoryId": 398, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2006289, + "Position": { + "X": 257.77063, + "Y": -111.92493, + "Z": 925.3832 + }, + "TerritoryId": 398, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 401, + "InteractionType": "Duty", + "ContentFinderConditionId": 87 + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 73.307335, + "Y": -49.128403, + "Z": -142.59073 + }, + "TerritoryId": 398, + "InteractionType": "WalkTo", + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather", + "Fly": true + }, + { + "DataId": 1011928, + "Position": { + "X": 73.19751, + "Y": -49.19563, + "Z": -139.05548 + }, + "StopDistance": 4, + "TerritoryId": 398, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "TerritoryId": 156, + "DataId": 2002881, + "Position": { + "X": 21.133728, + "Y": 22.323914, + "Z": -631.281 + }, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "AetheryteShortcut": "Mor Dhona" + }, + { + "DataId": 2002878, + "Position": { + "X": -0.015319824, + "Y": -1.0223389, + "Z": -26.779602 + }, + "TerritoryId": 351, + "InteractionType": "Interact", + "TargetTerritoryId": 351 + }, + { + "DataId": 1014565, + "Position": { + "X": 0.44250488, + "Y": -1.9957249, + "Z": -43.22882 + }, + "StopDistance": 7, + "TerritoryId": 351, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Trial Quests/2230_When the Bough Wakes.json b/QuestPaths/3.x - Heavensward/Trial Quests/2230_When the Bough Wakes.json new file mode 100644 index 00000000..6934095a --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Trial Quests/2230_When the Bough Wakes.json @@ -0,0 +1,129 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "TerritoryId": 156, + "DataId": 2002881, + "Position": { + "X": 21.133728, + "Y": 22.323914, + "Z": -631.281 + }, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 351 + ] + }, + "AetheryteShortcutIf": { + "InTerritory": [ + 351 + ] + } + } + }, + { + "DataId": 2002878, + "Position": { + "X": -0.015319824, + "Y": -1.0223389, + "Z": -26.779602 + }, + "TerritoryId": 351, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "SkipConditions": { + "StepIf": { + "ExtraCondition": "RisingStonesSolar" + } + } + }, + { + "DataId": 1014565, + "Position": { + "X": 0.44250488, + "Y": -1.9957249, + "Z": -43.22882 + }, + "StopDistance": 7, + "TerritoryId": 351, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1016631, + "Position": { + "X": 209.12476, + "Y": 256.37268, + "Z": -4.3793945 + }, + "TerritoryId": 402, + "InteractionType": "Interact", + "AetheryteShortcut": "Azys Lla - Helix", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 401, + "InteractionType": "Duty", + "ContentFinderConditionId": 134 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "TerritoryId": 156, + "DataId": 2002881, + "Position": { + "X": 21.133728, + "Y": 22.323914, + "Z": -631.281 + }, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "AetheryteShortcut": "Mor Dhona" + }, + { + "DataId": 2002878, + "Position": { + "X": -0.015319824, + "Y": -1.0223389, + "Z": -26.779602 + }, + "TerritoryId": 351, + "InteractionType": "Interact", + "TargetTerritoryId": 351 + }, + { + "DataId": 1014565, + "Position": { + "X": 0.44250488, + "Y": -1.9957249, + "Z": -43.22882 + }, + "StopDistance": 7, + "TerritoryId": 351, + "InteractionType": "CompleteQuest", + "NextQuestId": 2288 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Trial Quests/2281_A Fiendish Likeness.json b/QuestPaths/3.x - Heavensward/Trial Quests/2281_A Fiendish Likeness.json new file mode 100644 index 00000000..4f372b27 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Trial Quests/2281_A Fiendish Likeness.json @@ -0,0 +1,105 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "TerritoryId": 156, + "DataId": 2002881, + "Position": { + "X": 21.133728, + "Y": 22.323914, + "Z": -631.281 + }, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 351 + ] + }, + "AetheryteShortcutIf": { + "InTerritory": [ + 351 + ] + } + } + }, + { + "DataId": 2002878, + "Position": { + "X": -0.015319824, + "Y": -1.0223389, + "Z": -26.779602 + }, + "TerritoryId": 351, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "SkipConditions": { + "StepIf": { + "ExtraCondition": "RisingStonesSolar" + } + } + }, + { + "DataId": 1014565, + "Position": { + "X": 0.44250488, + "Y": -1.9957249, + "Z": -43.22882 + }, + "StopDistance": 7, + "TerritoryId": 351, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 212.05304, + "Y": 256.37265, + "Z": 0.08028713 + }, + "TerritoryId": 402, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Azys Lla - Helix", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "NearPosition": { + "Position": { + "X": 152.26978, + "Y": 245.1, + "Z": -6.2714844 + }, + "TerritoryId": 402, + "MaximumDistance": 10 + } + } + } + }, + { + "DataId": 1016633, + "Position": { + "X": 152.26978, + "Y": 245.1, + "Z": -6.2714844 + }, + "TerritoryId": 402, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Trial Quests/2288_The Fate of Stars.json b/QuestPaths/3.x - Heavensward/Trial Quests/2288_The Fate of Stars.json new file mode 100644 index 00000000..604727f4 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Trial Quests/2288_The Fate of Stars.json @@ -0,0 +1,152 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "TerritoryId": 156, + "DataId": 2002881, + "Position": { + "X": 21.133728, + "Y": 22.323914, + "Z": -631.281 + }, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 351 + ] + }, + "AetheryteShortcutIf": { + "InTerritory": [ + 351 + ] + } + } + }, + { + "DataId": 2002878, + "Position": { + "X": -0.015319824, + "Y": -1.0223389, + "Z": -26.779602 + }, + "TerritoryId": 351, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "SkipConditions": { + "StepIf": { + "ExtraCondition": "RisingStonesSolar" + } + } + }, + { + "DataId": 1014565, + "Position": { + "X": 0.44250488, + "Y": -1.9957249, + "Z": -43.22882 + }, + "StopDistance": 7, + "TerritoryId": 351, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1017115, + "Position": { + "X": -59.67804, + "Y": 271.23285, + "Z": 4.0131226 + }, + "TerritoryId": 402, + "InteractionType": "Interact", + "AetheryteShortcut": "Azys Lla - Helix", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2005564, + "Position": { + "X": -58.121643, + "Y": 271.1986, + "Z": -4.1047363 + }, + "TerritoryId": 402, + "InteractionType": "SinglePlayerDuty" + } + ] + }, + { + "Sequence": 3 + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1017167, + "Position": { + "X": -66.91089, + "Y": 271.23285, + "Z": 4.0131226 + }, + "TerritoryId": 402, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "TerritoryId": 156, + "DataId": 2002881, + "Position": { + "X": 21.133728, + "Y": 22.323914, + "Z": -631.281 + }, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "AetheryteShortcut": "Mor Dhona" + }, + { + "DataId": 2002878, + "Position": { + "X": -0.015319824, + "Y": -1.0223389, + "Z": -26.779602 + }, + "TerritoryId": 351, + "InteractionType": "Interact", + "TargetTerritoryId": 351 + }, + { + "DataId": 1014565, + "Position": { + "X": 0.44250488, + "Y": -1.9957249, + "Z": -43.22882 + }, + "StopDistance": 7, + "TerritoryId": 351, + "InteractionType": "CompleteQuest", + "NextQuestId": 2332 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Trial Quests/2332_Balance unto All.json b/QuestPaths/3.x - Heavensward/Trial Quests/2332_Balance unto All.json new file mode 100644 index 00000000..ad3d286f --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Trial Quests/2332_Balance unto All.json @@ -0,0 +1,129 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "TerritoryId": 156, + "DataId": 2002881, + "Position": { + "X": 21.133728, + "Y": 22.323914, + "Z": -631.281 + }, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 351 + ] + }, + "AetheryteShortcutIf": { + "InTerritory": [ + 351 + ] + } + } + }, + { + "DataId": 2002878, + "Position": { + "X": -0.015319824, + "Y": -1.0223389, + "Z": -26.779602 + }, + "TerritoryId": 351, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "SkipConditions": { + "StepIf": { + "ExtraCondition": "RisingStonesSolar" + } + } + }, + { + "DataId": 1014565, + "Position": { + "X": 0.44250488, + "Y": -1.9957249, + "Z": -43.22882 + }, + "StopDistance": 7, + "TerritoryId": 351, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1017674, + "Position": { + "X": 209.97937, + "Y": 256.37262, + "Z": 5.9052124 + }, + "TerritoryId": 402, + "InteractionType": "Interact", + "AetheryteShortcut": "Azys Lla - Helix", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 402, + "InteractionType": "Duty", + "ContentFinderConditionId": 183 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "TerritoryId": 156, + "DataId": 2002881, + "Position": { + "X": 21.133728, + "Y": 22.323914, + "Z": -631.281 + }, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "AetheryteShortcut": "Mor Dhona" + }, + { + "DataId": 2002878, + "Position": { + "X": -0.015319824, + "Y": -1.0223389, + "Z": -26.779602 + }, + "TerritoryId": 351, + "InteractionType": "Interact", + "TargetTerritoryId": 351 + }, + { + "DataId": 1014565, + "Position": { + "X": 0.44250488, + "Y": -1.9957249, + "Z": -43.22882 + }, + "StopDistance": 7, + "TerritoryId": 351, + "InteractionType": "CompleteQuest", + "NextQuestId": 2394 + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Trial Quests/2333_A Deific Simulacrum.json b/QuestPaths/3.x - Heavensward/Trial Quests/2333_A Deific Simulacrum.json new file mode 100644 index 00000000..4f372b27 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Trial Quests/2333_A Deific Simulacrum.json @@ -0,0 +1,105 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "TerritoryId": 156, + "DataId": 2002881, + "Position": { + "X": 21.133728, + "Y": 22.323914, + "Z": -631.281 + }, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 351 + ] + }, + "AetheryteShortcutIf": { + "InTerritory": [ + 351 + ] + } + } + }, + { + "DataId": 2002878, + "Position": { + "X": -0.015319824, + "Y": -1.0223389, + "Z": -26.779602 + }, + "TerritoryId": 351, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "SkipConditions": { + "StepIf": { + "ExtraCondition": "RisingStonesSolar" + } + } + }, + { + "DataId": 1014565, + "Position": { + "X": 0.44250488, + "Y": -1.9957249, + "Z": -43.22882 + }, + "StopDistance": 7, + "TerritoryId": 351, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 212.05304, + "Y": 256.37265, + "Z": 0.08028713 + }, + "TerritoryId": 402, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Azys Lla - Helix", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "NearPosition": { + "Position": { + "X": 152.26978, + "Y": 245.1, + "Z": -6.2714844 + }, + "TerritoryId": 402, + "MaximumDistance": 10 + } + } + } + }, + { + "DataId": 1016633, + "Position": { + "X": 152.26978, + "Y": 245.1, + "Z": -6.2714844 + }, + "TerritoryId": 402, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Trial Quests/2394_The Last Pillar to Fall.json b/QuestPaths/3.x - Heavensward/Trial Quests/2394_The Last Pillar to Fall.json new file mode 100644 index 00000000..4642d07a --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Trial Quests/2394_The Last Pillar to Fall.json @@ -0,0 +1,161 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "TerritoryId": 156, + "DataId": 2002881, + "Position": { + "X": 21.133728, + "Y": 22.323914, + "Z": -631.281 + }, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 351 + ] + }, + "AetheryteShortcutIf": { + "InTerritory": [ + 351 + ] + } + } + }, + { + "DataId": 2002878, + "Position": { + "X": -0.015319824, + "Y": -1.0223389, + "Z": -26.779602 + }, + "TerritoryId": 351, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "SkipConditions": { + "StepIf": { + "ExtraCondition": "RisingStonesSolar" + } + } + }, + { + "DataId": 1014565, + "Position": { + "X": 0.44250488, + "Y": -1.9957249, + "Z": -43.22882 + }, + "StopDistance": 7, + "TerritoryId": 351, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2007560, + "Position": { + "X": 216.11353, + "Y": 256.36682, + "Z": 10.757568 + }, + "TerritoryId": 402, + "InteractionType": "Interact", + "AetheryteShortcut": "Azys Lla - Helix", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1017675, + "Position": { + "X": 148.11926, + "Y": 245.1, + "Z": -4.1657104 + }, + "TerritoryId": 402, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3 + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1018511, + "Position": { + "X": -1.449646, + "Y": 3.144145E-06, + "Z": 5.2643433 + }, + "TerritoryId": 507, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "TerritoryId": 507, + "InteractionType": "Duty", + "ContentFinderConditionId": 223 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "TerritoryId": 156, + "DataId": 2002881, + "Position": { + "X": 21.133728, + "Y": 22.323914, + "Z": -631.281 + }, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "AetheryteShortcut": "Mor Dhona" + }, + { + "DataId": 2002878, + "Position": { + "X": -0.015319824, + "Y": -1.0223389, + "Z": -26.779602 + }, + "TerritoryId": 351, + "InteractionType": "Interact", + "TargetTerritoryId": 351 + }, + { + "DataId": 1014565, + "Position": { + "X": 0.44250488, + "Y": -1.9957249, + "Z": -43.22882 + }, + "StopDistance": 7, + "TerritoryId": 351, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Trial Quests/2395_A Demonic Duplicate.json b/QuestPaths/3.x - Heavensward/Trial Quests/2395_A Demonic Duplicate.json new file mode 100644 index 00000000..4f372b27 --- /dev/null +++ b/QuestPaths/3.x - Heavensward/Trial Quests/2395_A Demonic Duplicate.json @@ -0,0 +1,105 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "TerritoryId": 156, + "DataId": 2002881, + "Position": { + "X": 21.133728, + "Y": 22.323914, + "Z": -631.281 + }, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 351 + ] + }, + "AetheryteShortcutIf": { + "InTerritory": [ + 351 + ] + } + } + }, + { + "DataId": 2002878, + "Position": { + "X": -0.015319824, + "Y": -1.0223389, + "Z": -26.779602 + }, + "TerritoryId": 351, + "InteractionType": "Interact", + "TargetTerritoryId": 351, + "SkipConditions": { + "StepIf": { + "ExtraCondition": "RisingStonesSolar" + } + } + }, + { + "DataId": 1014565, + "Position": { + "X": 0.44250488, + "Y": -1.9957249, + "Z": -43.22882 + }, + "StopDistance": 7, + "TerritoryId": 351, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 212.05304, + "Y": 256.37265, + "Z": 0.08028713 + }, + "TerritoryId": 402, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Azys Lla - Helix", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "NearPosition": { + "Position": { + "X": 152.26978, + "Y": 245.1, + "Z": -6.2714844 + }, + "TerritoryId": 402, + "MaximumDistance": 10 + } + } + } + }, + { + "DataId": 1016633, + "Position": { + "X": 152.26978, + "Y": 245.1, + "Z": -6.2714844 + }, + "TerritoryId": 402, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/3.x - Heavensward/Unlocks/Ishgard Restoration/3725_A Home in the Firmament.json b/QuestPaths/3.x - Heavensward/Unlocks/Ishgard Restoration/3725_A Home in the Firmament.json index d30e7457..1f31e641 100644 --- a/QuestPaths/3.x - Heavensward/Unlocks/Ishgard Restoration/3725_A Home in the Firmament.json +++ b/QuestPaths/3.x - Heavensward/Unlocks/Ishgard Restoration/3725_A Home in the Firmament.json @@ -5,6 +5,22 @@ { "Sequence": 0, "Steps": [ + { + "InteractionType": "None", + "TerritoryId": 886, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Firmament" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InTerritory": [ + 886 + ] + } + } + }, { "DataId": 1031681, "Position": { @@ -13,7 +29,14 @@ "Z": 146.34924 }, "TerritoryId": 886, - "InteractionType": "Interact" + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotNamePlateIconId": [ + 60091 + ] + } + } }, { "DataId": 1031677, @@ -23,7 +46,14 @@ "Z": 168.9325 }, "TerritoryId": 886, - "InteractionType": "Interact" + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotNamePlateIconId": [ + 60091 + ] + } + } }, { "DataId": 1031692, @@ -34,7 +64,14 @@ }, "StopDistance": 5, "TerritoryId": 886, - "InteractionType": "Interact" + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotNamePlateIconId": [ + 60091 + ] + } + } }, { "Position": { @@ -53,7 +90,14 @@ "Z": 138.47559 }, "TerritoryId": 886, - "InteractionType": "Interact" + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotNamePlateIconId": [ + 60091 + ] + } + } }, { "DataId": 1031693, @@ -63,7 +107,14 @@ "Z": 138.93335 }, "TerritoryId": 886, - "InteractionType": "Interact" + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotNamePlateIconId": [ + 60091 + ] + } + } }, { "DataId": 1031694, @@ -74,7 +125,14 @@ }, "StopDistance": 7, "TerritoryId": 886, - "InteractionType": "Interact" + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotNamePlateIconId": [ + 60091 + ] + } + } }, { "DataId": 1031695, @@ -84,7 +142,14 @@ "Z": 169.9397 }, "TerritoryId": 886, - "InteractionType": "Interact" + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotNamePlateIconId": [ + 60091 + ] + } + } }, { "DataId": 1031681, @@ -94,7 +159,14 @@ "Z": 146.34924 }, "TerritoryId": 886, - "InteractionType": "Interact" + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotNamePlateIconId": [ + 60091 + ] + } + } }, { "DataId": 1031992, diff --git a/QuestPaths/3.x - Heavensward/Unlocks/Ishgard Restoration/3728_To Thaw a Frozen Heart.json b/QuestPaths/3.x - Heavensward/Unlocks/Ishgard Restoration/3728_To Thaw a Frozen Heart.json index bef2725b..98d6a072 100644 --- a/QuestPaths/3.x - Heavensward/Unlocks/Ishgard Restoration/3728_To Thaw a Frozen Heart.json +++ b/QuestPaths/3.x - Heavensward/Unlocks/Ishgard Restoration/3728_To Thaw a Frozen Heart.json @@ -43,7 +43,14 @@ "Z": 150.92688 }, "TerritoryId": 886, - "InteractionType": "Instruction", + "InteractionType": "PurchaseItem", + "PurchaseMenu": { + "ExcelSheet": "GilShop", + "Key": 262151, + "$": "This isn't the correct shop id, but it's also unclear how you'd find out" + }, + "ItemId": 5768, + "ItemCount": 2, "Comment": "Buy cream yellow dye", "AethernetShortcut": [ "[Firmament] The New Nest", diff --git a/QuestPaths/4.x - Stormblood/Aether Currents/The Azim Steppe/2771_Sheep Snatcher.json b/QuestPaths/4.x - Stormblood/Aether Currents/The Azim Steppe/2771_Sheep Snatcher.json index 923643c0..034df26b 100644 --- a/QuestPaths/4.x - Stormblood/Aether Currents/The Azim Steppe/2771_Sheep Snatcher.json +++ b/QuestPaths/4.x - Stormblood/Aether Currents/The Azim Steppe/2771_Sheep Snatcher.json @@ -28,7 +28,7 @@ "Z": -210.22363 }, "TerritoryId": 622, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Snipe", "Comment": "Snipe sheep" } ] diff --git a/QuestPaths/4.x - Stormblood/Aether Currents/The Azim Steppe/2782_Forty Years and Counting.json b/QuestPaths/4.x - Stormblood/Aether Currents/The Azim Steppe/2782_Forty Years and Counting.json index 549b7566..98a16015 100644 --- a/QuestPaths/4.x - Stormblood/Aether Currents/The Azim Steppe/2782_Forty Years and Counting.json +++ b/QuestPaths/4.x - Stormblood/Aether Currents/The Azim Steppe/2782_Forty Years and Counting.json @@ -50,18 +50,15 @@ }, "TerritoryId": 622, "InteractionType": "Interact", - "$": "QW: 0 0 0 0 0 0 -> QW: 1 16 0 0 0 128" - }, - { - "DataId": 2008926, - "Position": { - "X": 27.634033, - "Y": 115.464966, - "Z": -48.05072 - }, - "TerritoryId": 622, - "InteractionType": "Interact", - "$": "QW: 1 16 0 0 0 128 -> QW: 2 32 0 0 0 192" + "$": "QW: 0 0 0 0 0 0 -> QW: 1 16 0 0 0 128", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] }, { "DataId": 2008927, @@ -71,7 +68,35 @@ "Z": -49.5766 }, "TerritoryId": 622, - "InteractionType": "Interact" + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 2008926, + "Position": { + "X": 27.634033, + "Y": 115.464966, + "Z": -48.05072 + }, + "StopDistance": 4, + "TerritoryId": 622, + "InteractionType": "Interact", + "$": "QW: 1 16 0 0 0 128 -> QW: 2 32 0 0 0 192", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] } ] }, @@ -91,4 +116,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/Aether Currents/The Fringes/2639_Magiteknical Failure.json b/QuestPaths/4.x - Stormblood/Aether Currents/The Fringes/2639_Magiteknical Failure.json index 7f1657a2..ce26036a 100644 --- a/QuestPaths/4.x - Stormblood/Aether Currents/The Fringes/2639_Magiteknical Failure.json +++ b/QuestPaths/4.x - Stormblood/Aether Currents/The Fringes/2639_Magiteknical Failure.json @@ -49,8 +49,7 @@ }, "StopDistance": 0.5, "TerritoryId": 612, - "InteractionType": "Instruction", - "Comment": "Manual combat", + "InteractionType": "Combat", "EnemySpawnType": "AutoOnEnterArea", "KillEnemyDataIds": [ 7504 @@ -69,8 +68,7 @@ }, "StopDistance": 2, "TerritoryId": 612, - "InteractionType": "Instruction", - "Comment": "Manual combat", + "InteractionType": "Combat", "EnemySpawnType": "AutoOnEnterArea", "KillEnemyDataIds": [ 7505 diff --git a/QuestPaths/4.x - Stormblood/Aether Currents/The Fringes/2661_The Hidden Truth.json b/QuestPaths/4.x - Stormblood/Aether Currents/The Fringes/2661_The Hidden Truth.json index 62b1a0e5..e3c62d59 100644 --- a/QuestPaths/4.x - Stormblood/Aether Currents/The Fringes/2661_The Hidden Truth.json +++ b/QuestPaths/4.x - Stormblood/Aether Currents/The Fringes/2661_The Hidden Truth.json @@ -83,6 +83,7 @@ "Y": 74.88393, "Z": -118.30322 }, + "StopDistance": 5, "TerritoryId": 612, "InteractionType": "Interact" } @@ -98,10 +99,11 @@ "Y": 75.3867, "Z": -124.712036 }, + "StopDistance": 7, "TerritoryId": 612, "InteractionType": "CompleteQuest" } ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/Aether Currents/The Fringes/2821_Eyes Bigger than Her Stomach.json b/QuestPaths/4.x - Stormblood/Aether Currents/The Fringes/2821_Eyes Bigger than Her Stomach.json index 2eac6e18..b1c25727 100644 --- a/QuestPaths/4.x - Stormblood/Aether Currents/The Fringes/2821_Eyes Bigger than Her Stomach.json +++ b/QuestPaths/4.x - Stormblood/Aether Currents/The Fringes/2821_Eyes Bigger than Her Stomach.json @@ -28,9 +28,9 @@ "Steps": [ { "Position": { - "X": 370.87048, - "Y": 73.22009, - "Z": 118.791504 + "X": 385.1642, + "Y": 74.01643, + "Z": 135.44316 }, "TerritoryId": 612, "InteractionType": "WaitForManualProgress", @@ -55,4 +55,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/Aether Currents/The Lochs/2881_If I Were a Fish.json b/QuestPaths/4.x - Stormblood/Aether Currents/The Lochs/2881_If I Were a Fish.json index 3cf36eae..bf7b8e85 100644 --- a/QuestPaths/4.x - Stormblood/Aether Currents/The Lochs/2881_If I Were a Fish.json +++ b/QuestPaths/4.x - Stormblood/Aether Currents/The Lochs/2881_If I Were a Fish.json @@ -76,7 +76,8 @@ "TerritoryId": 621, "InteractionType": "WalkTo", "DisableNavmesh": true, - "Mount": true + "Mount": true, + "RestartNavigationIfCancelled": false }, { "DataId": 1023174, diff --git a/QuestPaths/4.x - Stormblood/Aether Currents/The Peaks/2842_Out of Sight.json b/QuestPaths/4.x - Stormblood/Aether Currents/The Peaks/2842_Out of Sight.json index 7599354f..2874d2b3 100644 --- a/QuestPaths/4.x - Stormblood/Aether Currents/The Peaks/2842_Out of Sight.json +++ b/QuestPaths/4.x - Stormblood/Aether Currents/The Peaks/2842_Out of Sight.json @@ -48,7 +48,8 @@ "Z": 786.1918 }, "TerritoryId": 620, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "Mount": true }, { "DataId": 1023259, diff --git a/QuestPaths/4.x - Stormblood/Aether Currents/The Ruby Sea/2632_The Palace of Lost Souls.json b/QuestPaths/4.x - Stormblood/Aether Currents/The Ruby Sea/2632_The Palace of Lost Souls.json index 7425f2d3..ab947e9d 100644 --- a/QuestPaths/4.x - Stormblood/Aether Currents/The Ruby Sea/2632_The Palace of Lost Souls.json +++ b/QuestPaths/4.x - Stormblood/Aether Currents/The Ruby Sea/2632_The Palace of Lost Souls.json @@ -50,7 +50,8 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "$": "Sui-no-Sato, NE inside" + "$": "Sui-no-Sato, NE inside", + "RestartNavigationIfCancelled": false }, { "Position": { @@ -112,7 +113,8 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "AetheryteShortcut": "Ruby Sea - Tamamizu" + "AetheryteShortcut": "Ruby Sea - Tamamizu", + "RestartNavigationIfCancelled": false }, { "Position": { @@ -122,7 +124,8 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "$": "Sui-no-Sato, NE outside" + "$": "Sui-no-Sato, NE outside", + "RestartNavigationIfCancelled": false }, { "DataId": 1023280, diff --git a/QuestPaths/4.x - Stormblood/Aether Currents/The Ruby Sea/2693_The Sword in the Stone.json b/QuestPaths/4.x - Stormblood/Aether Currents/The Ruby Sea/2693_The Sword in the Stone.json index b6c9665f..b3985897 100644 --- a/QuestPaths/4.x - Stormblood/Aether Currents/The Ruby Sea/2693_The Sword in the Stone.json +++ b/QuestPaths/4.x - Stormblood/Aether Currents/The Ruby Sea/2693_The Sword in the Stone.json @@ -20,15 +20,6 @@ { "Sequence": 1, "Steps": [ - { - "Position": { - "X": 566.1683, - "Y": -60.550995, - "Z": -134.80696 - }, - "TerritoryId": 613, - "InteractionType": "WalkTo" - }, { "DataId": 1023358, "Position": { @@ -87,9 +78,9 @@ "Steps": [ { "Position": { - "X": 617.86127, - "Y": -29.12958, - "Z": -129.81326 + "X": 617.17053, + "Y": -29.302427, + "Z": -130.22484 }, "TerritoryId": 613, "InteractionType": "Jump", @@ -137,30 +128,13 @@ "Steps": [ { "Position": { - "X": 593.3238, - "Y": -45.048393, - "Z": -152.89952 - }, - "TerritoryId": 613, - "InteractionType": "Jump", - "StopDistance": 0.25, - "JumpDestination": { - "Position": { - "X": 566.00684, - "Y": -61.995552, - "Z": -146.04814 - } - } - }, - { - "Position": { - "X": 566.1683, - "Y": -60.550995, - "Z": -134.80696 + "X": 570.09125, + "Y": -62.583626, + "Z": -145.46727 }, "TerritoryId": 613, "InteractionType": "WalkTo", - "Mount": true + "DisableNavmesh": true }, { "DataId": 1023358, @@ -175,4 +149,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/Aether Currents/Yanxia/2724_Something Smells.json b/QuestPaths/4.x - Stormblood/Aether Currents/Yanxia/2724_Something Smells.json index 7e6bc815..cab3da14 100644 --- a/QuestPaths/4.x - Stormblood/Aether Currents/Yanxia/2724_Something Smells.json +++ b/QuestPaths/4.x - Stormblood/Aether Currents/Yanxia/2724_Something Smells.json @@ -126,6 +126,17 @@ 4 ] }, + { + "Position": { + "X": 445.11514, + "Y": 40.55606, + "Z": -51.57855 + }, + "TerritoryId": 614, + "InteractionType": "WalkTo", + "DisableNavmesh": true, + "Mount": true + }, { "DataId": 2008465, "Position": { diff --git a/QuestPaths/4.x - Stormblood/Alliance Raid Quests/3090_My Power, My Pleasure, My Pain.json b/QuestPaths/4.x - Stormblood/Alliance Raid Quests/3090_My Power, My Pleasure, My Pain.json new file mode 100644 index 00000000..165c36a0 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Alliance Raid Quests/3090_My Power, My Pleasure, My Pain.json @@ -0,0 +1,239 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1026029, + "Position": { + "X": 1.3274536, + "Y": 0.05124623, + "Z": 1.9683228 + }, + "TerritoryId": 735, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1006305, + "Position": { + "X": 10.60498, + "Y": 71.47817, + "Z": -16.617126 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "AetheryteShortcut": "Eastern La Noscea - Wineport" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1006306, + "Position": { + "X": -25.864075, + "Y": 71.787285, + "Z": -36.78955 + }, + "TerritoryId": 137, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1006273, + "Position": { + "X": 619.0126, + "Y": 23.936245, + "Z": 455.10022 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "AetheryteShortcut": "Eastern La Noscea - Costa Del Sol", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1006305, + "Position": { + "X": 10.60498, + "Y": 71.47817, + "Z": -16.617126 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "AetheryteShortcut": "Eastern La Noscea - Wineport" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "Position": { + "X": -371.6037, + "Y": 54.310753, + "Z": 428.55798 + }, + "TerritoryId": 137, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1006312, + "Position": { + "X": -369.0395, + "Y": 54.28071, + "Z": 441.24512 + }, + "TerritoryId": 137, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1006312, + "Position": { + "X": -369.0395, + "Y": 54.28071, + "Z": 441.24512 + }, + "TerritoryId": 137, + "InteractionType": "Emote", + "Emote": "soothe" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1006312, + "Position": { + "X": -369.0395, + "Y": 54.28071, + "Z": 441.24512 + }, + "TerritoryId": 137, + "InteractionType": "Emote", + "Emote": "comfort" + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 2009478, + "Position": { + "X": -372.12183, + "Y": 48.874634, + "Z": 431.75403 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "Mount": true + } + ] + }, + { + "Sequence": 9, + "Steps": [ + { + "DataId": 1006305, + "Position": { + "X": 10.60498, + "Y": 71.47817, + "Z": -16.617126 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "AetheryteShortcut": "Eastern La Noscea - Wineport" + } + ] + }, + { + "Sequence": 10, + "Steps": [ + { + "DataId": 1006273, + "Position": { + "X": 619.0126, + "Y": 23.936245, + "Z": 455.10022 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "AetheryteShortcut": "Eastern La Noscea - Costa Del Sol", + "Fly": true + } + ] + }, + { + "Sequence": 11, + "Steps": [ + { + "DataId": 1024156, + "Position": { + "X": -59.098206, + "Y": 79.05602, + "Z": 45.303955 + }, + "StopDistance": 7, + "TerritoryId": 628, + "InteractionType": "Interact", + "TargetTerritoryId": 735, + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] Airship Landing" + ] + }, + { + "DataId": 1026029, + "Position": { + "X": 1.3274536, + "Y": 0.05124623, + "Z": 1.9683228 + }, + "TerritoryId": 735, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1026029, + "Position": { + "X": 1.3274536, + "Y": 0.05124623, + "Z": 1.9683228 + }, + "TerritoryId": 735, + "InteractionType": "CompleteQuest", + "NextQuestId": 3190 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Alliance Raid Quests/3091_Desire.json b/QuestPaths/4.x - Stormblood/Alliance Raid Quests/3091_Desire.json index 4242e0f7..d0c8d2a9 100644 --- a/QuestPaths/4.x - Stormblood/Alliance Raid Quests/3091_Desire.json +++ b/QuestPaths/4.x - Stormblood/Alliance Raid Quests/3091_Desire.json @@ -54,7 +54,7 @@ "Z": 208.484 }, "TerritoryId": 787, - "InteractionType": "Instruction", + "InteractionType": "Snipe", "Comment": "Far on the left" } ] diff --git a/QuestPaths/4.x - Stormblood/Alliance Raid Quests/3190_In Bad Taste.json b/QuestPaths/4.x - Stormblood/Alliance Raid Quests/3190_In Bad Taste.json new file mode 100644 index 00000000..fe7dc876 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Alliance Raid Quests/3190_In Bad Taste.json @@ -0,0 +1,127 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1026029, + "Position": { + "X": 1.3274536, + "Y": 0.05124623, + "Z": 1.9683228 + }, + "TerritoryId": 735, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1 + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1026029, + "Position": { + "X": 1.3274536, + "Y": 0.05124623, + "Z": 1.9683228 + }, + "TerritoryId": 735, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1006305, + "Position": { + "X": 10.60498, + "Y": 71.47817, + "Z": -16.617126 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "AetheryteShortcut": "Eastern La Noscea - Wineport" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1006305, + "Position": { + "X": 10.60498, + "Y": 71.47817, + "Z": -16.617126 + }, + "TerritoryId": 137, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "Position": { + "X": -371.6037, + "Y": 54.310753, + "Z": 428.55798 + }, + "TerritoryId": 137, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1006312, + "Position": { + "X": -369.0395, + "Y": 54.28071, + "Z": 441.24512 + }, + "TerritoryId": 137, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1024156, + "Position": { + "X": -59.098206, + "Y": 79.05602, + "Z": 45.303955 + }, + "StopDistance": 7, + "TerritoryId": 628, + "InteractionType": "Interact", + "TargetTerritoryId": 735, + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] Airship Landing" + ] + }, + { + "DataId": 1026029, + "Position": { + "X": 1.3274536, + "Y": 0.05124623, + "Z": 1.9683228 + }, + "TerritoryId": 735, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3044_A Sluggish Endeavor.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3044_A Sluggish Endeavor.json index 13709727..80bf5056 100644 --- a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3044_A Sluggish Endeavor.json +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3044_A Sluggish Endeavor.json @@ -35,7 +35,8 @@ 8578, 8579, 8580 - ] + ], + "Fly": true } ] }, diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3048_A Bit of Home Cooking.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3048_A Bit of Home Cooking.json index a3e5bc82..3270b428 100644 --- a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3048_A Bit of Home Cooking.json +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3048_A Bit of Home Cooking.json @@ -22,14 +22,13 @@ "Sequence": 1, "Steps": [ { - "DataId": 2009333, "Position": { - "X": 180.4989, - "Y": 45.609253, - "Z": 452.78088 + "X": 178.82968, + "Y": 45.361248, + "Z": 453.55005 }, "TerritoryId": 612, - "InteractionType": "Interact", + "InteractionType": "WalkTo", "Fly": true, "RequiredQuestVariables": [ null, @@ -48,6 +47,54 @@ null, null, null + ], + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + } + }, + { + "DataId": 2009333, + "Position": { + "X": 180.4989, + "Y": 45.609253, + "Z": 452.78088 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "RequiredQuestVariables": [ + null, + [ + { + "Low": 1 + }, + { + "Low": 2 + }, + { + "Low": 4 + } + ], + null, + null, + null, + null + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 ] }, { diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3049_Snack between Meals.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3049_Snack between Meals.json index 2ff0c260..f9de1919 100644 --- a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3049_Snack between Meals.json +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3049_Snack between Meals.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -22,7 +21,96 @@ { "Sequence": 1, "Steps": [ - + { + "DataId": 2009337, + "Position": { + "X": 94.95691, + "Y": 49.05774, + "Z": 575.2803 + }, + "TerritoryId": 612, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 8584 + ], + "RequiredQuestVariables": [ + null, + null, + [ + { + "Low": 1 + }, + { + "Low": 2 + } + ], + null, + null, + null + ], + "Fly": true + }, + { + "DataId": 2009338, + "Position": { + "X": 180.07166, + "Y": 47.470703, + "Z": 546.1051 + }, + "TerritoryId": 612, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 8584 + ], + "RequiredQuestVariables": [ + null, + null, + [ + { + "Low": 3 + }, + { + "Low": 1 + } + ], + null, + null, + null + ], + "Fly": true + }, + { + "DataId": 2009339, + "Position": { + "X": 291.21838, + "Y": 47.501343, + "Z": 496.75732 + }, + "TerritoryId": 612, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 8584 + ], + "RequiredQuestVariables": [ + null, + null, + [ + { + "Low": 2 + }, + { + "Low": 3 + } + ], + null, + null, + null + ], + "Fly": true + } ] }, { diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3049_Snack between Meals.md b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3049_Snack between Meals.md new file mode 100644 index 00000000..995b6b9b --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3049_Snack between Meals.md @@ -0,0 +1,6 @@ +``` +0 0 x 0 0 0 | + 1 2009337 -> 2009338 + 2 2009337 -> 2009339 + 3 2009338 -> 2009339 +``` diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3050_A Signal for the Senses.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3050_A Signal for the Senses.json index 2ff0c260..2c59b09b 100644 --- a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3050_A Signal for the Senses.json +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3050_A Signal for the Senses.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -22,7 +21,35 @@ { "Sequence": 1, "Steps": [ - + { + "DataId": 2009341, + "Position": { + "X": 333.1808, + "Y": 61.17334, + "Z": -362.41705 + }, + "TerritoryId": 612, + "InteractionType": "UseItem", + "ItemId": 2002437, + "AetheryteShortcut": "Rhalgr's Reach", + "AethernetShortcut": [ + "[Rhalgr's Reach] Aetheryte Plaza", + "[Rhalgr's Reach] Fringes Gate" + ], + "Fly": true + }, + { + "DataId": 2009340, + "Position": { + "X": 90.01294, + "Y": 74.44873, + "Z": -566.03345 + }, + "TerritoryId": 612, + "InteractionType": "UseItem", + "ItemId": 2002437, + "Fly": true + } ] }, { @@ -36,6 +63,7 @@ }, "TerritoryId": 612, "InteractionType": "WalkTo", + "AetheryteShortcut": "Fringes - Peering Stones", "Fly": true }, { diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3051_Criminal Crossings.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3051_Criminal Crossings.json index 2ff0c260..e6b6823c 100644 --- a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3051_Criminal Crossings.json +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3051_Criminal Crossings.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -13,16 +12,210 @@ "Y": 56.113926, "Z": 236.25537 }, - "StopDistance": 7, "TerritoryId": 612, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Fringes - Peering Stones", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, { "Sequence": 1, "Steps": [ - + { + "DataId": 1025120, + "Position": { + "X": -333.66907, + "Y": 43.042835, + "Z": -22.201904 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "RequiredQuestVariables": [ + null, + null, + null, + [ + 2, + 4 + ], + null, + null + ], + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_BANANA402_03051_Q1_000_000", + "Answer": "TEXT_BANANA402_03051_A1_000_001" + } + ] + }, + { + "DataId": 1025062, + "Position": { + "X": -345.7237, + "Y": 43.09622, + "Z": 177.84387 + }, + "TerritoryId": 612, + "InteractionType": "Combat", + "RequiredQuestVariables": [ + null, + null, + null, + [ + 1, + 3, + 5 + ], + null, + null + ], + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_BANANA402_03051_Q1_000_000", + "Answer": "TEXT_BANANA402_03051_A1_000_002" + } + ], + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 8587 + ] + }, + { + "DataId": 1025119, + "Position": { + "X": -488.18192, + "Y": 81.128265, + "Z": -191.33289 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "RequiredQuestVariables": [ + null, + null, + null, + [ + 1, + 2, + 5 + ], + null, + null + ], + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_BANANA402_03051_Q1_000_000", + "Answer": "TEXT_BANANA402_03051_A1_000_001" + } + ] + }, + { + "DataId": 1025061, + "Position": { + "X": -488.18192, + "Y": 81.128265, + "Z": -191.33289 + }, + "TerritoryId": 612, + "InteractionType": "Combat", + "RequiredQuestVariables": [ + null, + null, + null, + [ + 3, + 4 + ], + null, + null + ], + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_BANANA402_03051_Q1_000_000", + "Answer": "TEXT_BANANA402_03051_A1_000_002" + } + ], + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 8586 + ] + }, + { + "DataId": 1025060, + "Position": { + "X": -572.9916, + "Y": 112.44218, + "Z": -229.32788 + }, + "TerritoryId": 612, + "InteractionType": "Combat", + "RequiredQuestVariables": [ + null, + null, + null, + [ + 2, + 4 + ], + null, + null + ], + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_BANANA402_03051_Q1_000_000", + "Answer": "TEXT_BANANA402_03051_A1_000_002" + } + ], + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 8585 + ] + }, + { + "DataId": 1025118, + "Position": { + "X": -572.96106, + "Y": 112.436066, + "Z": -229.29736 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "RequiredQuestVariables": [ + null, + null, + null, + [ + 1, + 3, + 5 + ], + null, + null + ], + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_BANANA402_03051_Q1_000_000", + "Answer": "TEXT_BANANA402_03051_A1_000_001" + } + ] + } ] }, { @@ -36,6 +229,7 @@ }, "TerritoryId": 612, "InteractionType": "WalkTo", + "AetheryteShortcut": "Fringes - Peering Stones", "Fly": true }, { diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3051_Criminal Crossings.md b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3051_Criminal Crossings.md new file mode 100644 index 00000000..6834de92 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3051_Criminal Crossings.md @@ -0,0 +1,8 @@ +``` +0 0 0 x 0 0 | + 1 1025062 -> 1025119 -> 1025118 + 2 1025120 -> 1025119 -> 1025060 + 3 1025062 -> 1025061 -> 1025118 + 4 1025120 -> 1025061 -> 1025060 + 5 1025062 -> 1025119 -> 1025118 +``` diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3052_When Feathers Fly.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3052_When Feathers Fly.json index 2ff0c260..9d6fd5b4 100644 --- a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3052_When Feathers Fly.json +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3052_When Feathers Fly.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -22,7 +21,102 @@ { "Sequence": 1, "Steps": [ - + { + "DataId": 1025066, + "Position": { + "X": -155.90149, + "Y": 66.2623, + "Z": -366.93372 + }, + "TerritoryId": 612, + "InteractionType": "Emote", + "Emote": "rally", + "Fly": true, + "RequiredQuestVariables": [ + null, + null, + [ + { + "High": 1 + } + ], + null, + null, + null + ] + }, + { + "DataId": 1025064, + "Position": { + "X": 185.62585, + "Y": 68.93902, + "Z": -372.15234 + }, + "TerritoryId": 612, + "InteractionType": "Emote", + "RequiredQuestVariables": [ + null, + [ + { + "Low": 1 + } + ], + null, + null, + null, + null + ], + "Emote": "soothe", + "Fly": true + }, + { + "DataId": 1025063, + "Position": { + "X": 291.73718, + "Y": 73.622604, + "Z": -496.87955 + }, + "TerritoryId": 612, + "InteractionType": "Emote", + "RequiredQuestVariables": [ + null, + [ + { + "Low": 2 + } + ], + null, + null, + null, + null + ], + "Emote": "soothe", + "Fly": true + }, + { + "DataId": 1025065, + "Position": { + "X": -73.04492, + "Y": 62.044453, + "Z": -878.78235 + }, + "TerritoryId": 612, + "InteractionType": "Emote", + "RequiredQuestVariables": [ + null, + null, + [ + { + "High": 2 + } + ], + null, + null, + null + ], + "Emote": "rally", + "Fly": true + } ] }, { @@ -36,6 +130,7 @@ }, "TerritoryId": 612, "InteractionType": "WalkTo", + "AetheryteShortcut": "Fringes - Peering Stones", "Fly": true }, { diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3052_When Feathers Fly.md b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3052_When Feathers Fly.md new file mode 100644 index 00000000..8b0ba9fb --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3052_When Feathers Fly.md @@ -0,0 +1,7 @@ +``` +0 0 x x 0 0 | 1025063 1025064 1025065 1025066 + 1 16 x x + 2 16 x x + 1 32 x x + 2 32 x x +``` diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3053_Sparring Lesson.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3053_Sparring Lesson.json index 2ff0c260..5d4ae762 100644 --- a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3053_Sparring Lesson.json +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3053_Sparring Lesson.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -22,7 +21,36 @@ { "Sequence": 1, "Steps": [ - + { + "DataId": 1025067, + "Position": { + "X": 39.04773, + "Y": 43.373318, + "Z": -221.9425 + }, + "TerritoryId": 612, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 8588 + ], + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1025247, + "Position": { + "X": 41.45874, + "Y": 42.875717, + "Z": -218.28033 + }, + "TerritoryId": 612, + "InteractionType": "Interact" + } ] }, { diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3054_Funnel and Games.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3054_Funnel and Games.json index 2ff0c260..50faf77f 100644 --- a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3054_Funnel and Games.json +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3054_Funnel and Games.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -22,7 +21,84 @@ { "Sequence": 1, "Steps": [ - + { + "Position": { + "X": -169.52124, + "Y": 41.96321, + "Z": -23.855082 + }, + "TerritoryId": 612, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "KillEnemyDataIds": [ + 8589 + ], + "Fly": true, + "Land": true, + "RequiredQuestVariables": [ + null, + null, + [ + 16 + ], + null, + null, + null + ], + "CombatDelaySecondsAtStart": 1 + }, + { + "Position": { + "X": -259.28268, + "Y": 49.18244, + "Z": 33.798065 + }, + "TerritoryId": 612, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "KillEnemyDataIds": [ + 8589 + ], + "Fly": true, + "Land": true, + "RequiredQuestVariables": [ + null, + null, + [ + 32 + ], + null, + null, + null + ], + "CombatDelaySecondsAtStart": 1 + }, + { + "Position": { + "X": -219.26901, + "Y": 43.36, + "Z": 90.7601 + }, + "TerritoryId": 612, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "KillEnemyDataIds": [ + 8589 + ], + "Fly": true, + "Land": true, + "RequiredQuestVariables": [ + null, + null, + [ + 48 + ], + null, + null, + null + ], + "CombatDelaySecondsAtStart": 1 + } ] }, { diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3058_The Very Hungry Marid.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3058_The Very Hungry Marid.json index 2ff0c260..6f27b3da 100644 --- a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3058_The Very Hungry Marid.json +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3058_The Very Hungry Marid.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -22,7 +21,65 @@ { "Sequence": 1, "Steps": [ - + { + "DataId": 2009347, + "Position": { + "X": 35.965454, + "Y": 51.255005, + "Z": 292.37805 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1025072, + "Position": { + "X": 94.04126, + "Y": 41.171764, + "Z": 376.57727 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2009347, + "Position": { + "X": 35.965454, + "Y": 51.255005, + "Z": 292.37805 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1025072, + "Position": { + "X": 94.04126, + "Y": 41.171764, + "Z": 376.57727 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } ] }, { diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3059_The Antlion's Share.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3059_The Antlion's Share.json index 2ff0c260..ee2a7741 100644 --- a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3059_The Antlion's Share.json +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3059_The Antlion's Share.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -22,7 +21,38 @@ { "Sequence": 1, "Steps": [ - + { + "DataId": 2009348, + "Position": { + "X": 798.2451, + "Y": 78.93494, + "Z": 345.26575 + }, + "TerritoryId": 612, + "InteractionType": "UseItem", + "ItemId": 2002441, + "Fly": true, + "$": "Adding another step to try to move away from the explosion won't work. It's stuck in this step until the explosion." + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2009349, + "Position": { + "X": 798.2451, + "Y": 78.93494, + "Z": 345.26575 + }, + "TerritoryId": 612, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 8592 + ] + } ] }, { diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3060_Hearts of Precious Stone.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3060_Hearts of Precious Stone.json index 2ff0c260..79b3ff21 100644 --- a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3060_Hearts of Precious Stone.json +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3060_Hearts of Precious Stone.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -22,7 +21,50 @@ { "Sequence": 1, "Steps": [ - + { + "DataId": 1025092, + "Position": { + "X": 693.6294, + "Y": 76.575005, + "Z": 479.51465 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2009350, + "Position": { + "X": 620.29456, + "Y": 48.599854, + "Z": 349.87402 + }, + "TerritoryId": 612, + "InteractionType": "Snipe", + "Comment": "Shoot the Crazed Dharas", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1025092, + "Position": { + "X": 693.6294, + "Y": 76.575005, + "Z": 479.51465 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } ] }, { diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3061_Ants in the Pants.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3061_Ants in the Pants.json index 2ff0c260..48f32de4 100644 --- a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3061_Ants in the Pants.json +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3061_Ants in the Pants.json @@ -22,7 +22,6 @@ { "Sequence": 1, "Steps": [ - ] }, { diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3069_Catching and Fletching.md b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3069_Catching and Fletching.md index 989bda00..d701d087 100644 --- a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3069_Catching and Fletching.md +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Dailies/3069_Catching and Fletching.md @@ -1,3 +1,3 @@ 0 0 x 0 0 0 2009375 2009376 2009377 - 1 | x x - 2 | x x +1 | x x +2 | x x diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Story/3036_Brooding Broodmother.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Story/3036_Brooding Broodmother.json new file mode 100644 index 00000000..c6aaba27 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Story/3036_Brooding Broodmother.json @@ -0,0 +1,88 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1021565, + "Position": { + "X": 440.11584, + "Y": 114.254425, + "Z": 212.84802 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Fringes - Peering Stones", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1020817, + "Position": { + "X": 327.5348, + "Y": 83.45977, + "Z": -103.07471 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1024894, + "Position": { + "X": 21.744019, + "Y": -0.05840592, + "Z": 13.01593 + }, + "TerritoryId": 635, + "InteractionType": "Interact", + "AetheryteShortcut": "Rhalgr's Reach" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1024771, + "Position": { + "X": 12.008789, + "Y": 55.97821, + "Z": 237.96448 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Fringes - Peering Stones", + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_BANANA001_03036_Q2_000_000", + "Answer": "TEXT_BANANA001_03036_A2_000_001" + }, + { + "Type": "List", + "Prompt": "TEXT_BANANA001_03036_Q3_000_000", + "Answer": "TEXT_BANANA001_03036_A3_000_001" + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Story/3037_Griffins Rampant.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Story/3037_Griffins Rampant.json new file mode 100644 index 00000000..aa55efd9 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Story/3037_Griffins Rampant.json @@ -0,0 +1,159 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024771, + "Position": { + "X": 12.008789, + "Y": 55.97821, + "Z": 237.96448 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1024896, + "Position": { + "X": -630.2129, + "Y": 130.26343, + "Z": -452.20117 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "AetheryteShortcut": "Fringes - Castrum Oriens", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1024897, + "Position": { + "X": -76.40198, + "Y": -5.32758e-12, + "Z": -48.233826 + }, + "TerritoryId": 635, + "InteractionType": "Interact", + "Mount": true, + "AetheryteShortcut": "Rhalgr's Reach", + "AethernetShortcut": [ + "[Rhalgr's Reach] Aetheryte Plaza", + "[Rhalgr's Reach] Western Rhalgr's Reach" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1024952, + "Position": { + "X": 12.008789, + "Y": 55.97821, + "Z": 237.96448 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "AetheryteShortcut": "Fringes - Peering Stones", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1024900, + "Position": { + "X": -50.980408, + "Y": 56.02146, + "Z": 218.46338 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1024901, + "Position": { + "X": -80.52191, + "Y": 56.021286, + "Z": 231.40308 + }, + "TerritoryId": 612, + "InteractionType": "Action", + "Action": "Buffet (Griffin)", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1024901, + "Position": { + "X": -80.52191, + "Y": 56.021286, + "Z": 231.40308 + }, + "TerritoryId": 612, + "InteractionType": "Action", + "Action": "Buffet (Griffin)", + "Fly": true + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1024901, + "Position": { + "X": -80.52191, + "Y": 56.021286, + "Z": 231.40308 + }, + "TerritoryId": 612, + "InteractionType": "Action", + "Action": "Buffet (Griffin)", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1024901, + "Position": { + "X": -80.52191, + "Y": 56.021286, + "Z": 231.40308 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "Mount": false + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Story/3038_Chance of Gales.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Story/3038_Chance of Gales.json new file mode 100644 index 00000000..c51e7201 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Story/3038_Chance of Gales.json @@ -0,0 +1,194 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024771, + "Position": { + "X": 12.008789, + "Y": 55.97821, + "Z": 237.96448 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1024903, + "Position": { + "X": 111.31445, + "Y": 39.096542, + "Z": 296.34546 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1021591, + "Position": { + "X": -277.82104, + "Y": 258.90652, + "Z": 782.77246 + }, + "TerritoryId": 620, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Peaks - Ala Ghiri" + }, + { + "DataId": 1020871, + "Position": { + "X": -237.90344, + "Y": 257.71973, + "Z": 741.5731 + }, + "TerritoryId": 620, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 1021587, + "Position": { + "X": -210.68134, + "Y": 257.8064, + "Z": 767.4829 + }, + "TerritoryId": 620, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1024906, + "Position": { + "X": -239.12415, + "Y": 258.90652, + "Z": 782.62 + }, + "TerritoryId": 620, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1024908, + "Position": { + "X": -238.91058, + "Y": 266.39832, + "Z": 508.14062 + }, + "TerritoryId": 620, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1024911, + "Position": { + "X": 10.971252, + "Y": 55.943913, + "Z": 239.88696 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Fringes - Peering Stones" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1024912, + "Position": { + "X": -92.27136, + "Y": 50.00444, + "Z": 186.29736 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "Position": { + "X": -212.2359, + "Y": 43.672523, + "Z": -133.15985 + }, + "TerritoryId": 612, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2009281, + "Position": { + "X": -209.79633, + "Y": 42.70996, + "Z": -153.85675 + }, + "TerritoryId": 612, + "InteractionType": "Action", + "Action": "Trample", + "Land": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 5.853586, + "Y": 55.943962, + "Z": 237.26181 + }, + "TerritoryId": 612, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1024911, + "Position": { + "X": 10.971252, + "Y": 55.943913, + "Z": 239.88696 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "Mount": false + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Story/3039_It Can Be Cruel Sometimes.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Story/3039_It Can Be Cruel Sometimes.json new file mode 100644 index 00000000..e1958ab9 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Story/3039_It Can Be Cruel Sometimes.json @@ -0,0 +1,162 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024771, + "Position": { + "X": 12.008789, + "Y": 55.97821, + "Z": 237.96448 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1024915, + "Position": { + "X": -127.45862, + "Y": 41.197662, + "Z": 7.248047 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1024915, + "Position": { + "X": -127.45862, + "Y": 41.197662, + "Z": 7.248047 + }, + "TerritoryId": 612, + "InteractionType": "UseItem", + "GroundTarget": true, + "ItemId": 2002429 + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1024915, + "Position": { + "X": -127.45862, + "Y": 41.197662, + "Z": 7.248047 + }, + "TerritoryId": 612, + "InteractionType": "UseItem", + "GroundTarget": true, + "ItemId": 2002429 + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1024915, + "Position": { + "X": -127.45862, + "Y": 41.197662, + "Z": 7.248047 + }, + "TerritoryId": 612, + "InteractionType": "UseItem", + "GroundTarget": true, + "ItemId": 2002429 + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1019486, + "Position": { + "X": -116.746826, + "Y": 0.6342248, + "Z": -55.832825 + }, + "TerritoryId": 635, + "InteractionType": "Interact", + "Mount": true, + "AetheryteShortcut": "Rhalgr's Reach", + "AethernetShortcut": [ + "[Rhalgr's Reach] Aetheryte Plaza", + "[Rhalgr's Reach] Western Rhalgr's Reach" + ] + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "Position": { + "X": -496.6736, + "Y": 118.65279, + "Z": -424.7939 + }, + "TerritoryId": 612, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 8577 + ], + "Fly": true, + "Land": true, + "AetheryteShortcut": "Fringes - Castrum Oriens" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1024920, + "Position": { + "X": -495.01794, + "Y": 118.79865, + "Z": -427.1153 + }, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1024952, + "Position": { + "X": 12.008789, + "Y": 55.97821, + "Z": 237.96448 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "Fringes - Peering Stones" + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Story/3041_Celebratory Smorgasbord.json b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Story/3041_Celebratory Smorgasbord.json new file mode 100644 index 00000000..81c0e3ac --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Ananta/Story/3041_Celebratory Smorgasbord.json @@ -0,0 +1,98 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024771, + "Position": { + "X": 12.008789, + "Y": 55.97821, + "Z": 237.96448 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1023142, + "Position": { + "X": -642.9083, + "Y": 130.25946, + "Z": -538.29254 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Fringes - Castrum Oriens" + }, + { + "DataId": 1024937, + "Position": { + "X": 450.88867, + "Y": 114.36421, + "Z": 235.91968 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Fringes - Peering Stones" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1024952, + "Position": { + "X": 12.008789, + "Y": 55.97821, + "Z": 237.96448 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1025235, + "Position": { + "X": -155.2301, + "Y": 39.096687, + "Z": 159.0448 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1024952, + "Position": { + "X": 12.008789, + "Y": 55.97821, + "Z": 237.96448 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Dailies/2981_You Have the Rite.json b/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Dailies/2981_You Have the Rite.json new file mode 100644 index 00000000..8cafa32b --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Dailies/2981_You Have the Rite.json @@ -0,0 +1,115 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024217, + "Position": { + "X": 394.39978, + "Y": -119.58932, + "Z": -232.28815 + }, + "TerritoryId": 613, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 317.60394, + "Y": -83.29468, + "Z": -227.42934 + }, + "TerritoryId": 613, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "Position": { + "X": -3.8817294, + "Y": -146.96666, + "Z": -155.70833 + }, + "TerritoryId": 613, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1024294, + "Position": { + "X": -24.765442, + "Y": -190.38937, + "Z": -137.10236 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 368.39856, + "Y": -116.624695, + "Z": -291.34058 + }, + "TerritoryId": 613, + "InteractionType": "UseItem", + "ItemId": 2002400, + "AetheryteShortcut": "Ruby Sea - Tamamizu", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2009085, + "Position": { + "X": 367.18176, + "Y": -119.93892, + "Z": -291.77762 + }, + "TerritoryId": 613, + "InteractionType": "Emote", + "Emote": "pray" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 392.59683, + "Y": -119.589325, + "Z": -234.30063 + }, + "TerritoryId": 613, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1024217, + "Position": { + "X": 394.39978, + "Y": -119.58932, + "Z": -232.28815 + }, + "TerritoryId": 613, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Dailies/2984_Pickles of Partnership.json b/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Dailies/2984_Pickles of Partnership.json new file mode 100644 index 00000000..75895739 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Dailies/2984_Pickles of Partnership.json @@ -0,0 +1,89 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024217, + "Position": { + "X": 394.39978, + "Y": -119.58932, + "Z": -232.28815 + }, + "TerritoryId": 613, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1019249, + "Position": { + "X": 537.1328, + "Y": 33.655228, + "Z": -811.1849 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Ruby Sea - Onokoro", + "RequiredQuestVariables": [null, null, [16, 32], null, null, null] + }, + { + "DataId": 1024348, + "Position": { + "X": 724.8187, + "Y": 1.3691645, + "Z": -814.4198 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true, + "RequiredQuestVariables": [null, null, [32], null, null, null] + }, + { + "DataId": 1024420, + "Position": { + "X": 577.3556, + "Y": 9.866471, + "Z": -733.79114 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true, + "RequiredQuestVariables": [null, null, [16], null, null, null] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 392.59683, + "Y": -119.589325, + "Z": -234.30063 + }, + "TerritoryId": 613, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Ruby Sea - Tamamizu" + }, + { + "DataId": 1024217, + "Position": { + "X": 394.39978, + "Y": -119.58932, + "Z": -232.28815 + }, + "TerritoryId": 613, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Dailies/2985_Little Kojin Lost.json b/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Dailies/2985_Little Kojin Lost.json new file mode 100644 index 00000000..658f8fdb --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Dailies/2985_Little Kojin Lost.json @@ -0,0 +1,118 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024217, + "Position": { + "X": 394.39978, + "Y": -119.58932, + "Z": -232.28815 + }, + "TerritoryId": 613, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 324.734, + "Y": -118.16611, + "Z": -310.65613 + }, + "TerritoryId": 613, + "InteractionType": "WalkTo", + "Fly": true, + "RestartNavigationIfCancelled": false + }, + { + "DataId": 2009099, + "Position": { + "X": 829.0073, + "Y": -122.179016, + "Z": -768.91736 + }, + "TerritoryId": 613, + "InteractionType": "Say", + "ChatMessage": { + "Key": "TEXT_BANKJN401_02985_SAYTODO_000_015" + }, + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1024295, + "Position": { + "X": 861.6616, + "Y": -108.659546, + "Z": -546.4103 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true, + "RequiredQuestVariables": [null, [16], null, null, null, null] + }, + { + "DataId": 1024345, + "Position": { + "X": 891.78296, + "Y": -140.61188, + "Z": -794.36945 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true, + "RequiredQuestVariables": [null, [32], null, null, null, null] + }, + { + "DataId": 1024344, + "Position": { + "X": 836.14856, + "Y": -127.85541, + "Z": -910.7042 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true, + "RequiredQuestVariables": [null, [48], null, null, null, null] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 392.59683, + "Y": -119.589325, + "Z": -234.30063 + }, + "TerritoryId": 613, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Ruby Sea - Tamamizu" + }, + { + "DataId": 1024217, + "Position": { + "X": 394.39978, + "Y": -119.58932, + "Z": -232.28815 + }, + "TerritoryId": 613, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Dailies/2986_Much at Steak.json b/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Dailies/2986_Much at Steak.json new file mode 100644 index 00000000..ba5a8f43 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Dailies/2986_Much at Steak.json @@ -0,0 +1,97 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024217, + "Position": { + "X": 394.39978, + "Y": -119.58932, + "Z": -232.28815 + }, + "TerritoryId": 613, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -305.79498, + "Y": -0.5, + "Z": -517.7326 + }, + "TerritoryId": 613, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [8237], + "Fly": true, + "Land": true, + "AetheryteShortcut": "Ruby Sea - Onokoro", + "RequiredQuestVariables": [null, null, [1], null, null, null] + }, + { + "Position": { + "X": 166.64561, + "Y": -0.4983238, + "Z": -751.1739 + }, + "TerritoryId": 613, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [8237], + "Fly": true, + "Land": true, + "AetheryteShortcut": "Ruby Sea - Onokoro", + "RequiredQuestVariables": [null, null, [2], null, null, null] + }, + { + "Position": { + "X": -135.29268, + "Y": -0.06343824, + "Z": -805.9451 + }, + "TerritoryId": 613, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [8237], + "Fly": true, + "Land": true, + "AetheryteShortcut": "Ruby Sea - Onokoro", + "RequiredQuestVariables": [null, null, [3], null, null, null] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 392.59683, + "Y": -119.589325, + "Z": -234.30063 + }, + "TerritoryId": 613, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Ruby Sea - Tamamizu" + }, + { + "DataId": 1024217, + "Position": { + "X": 394.39978, + "Y": -119.58932, + "Z": -232.28815 + }, + "TerritoryId": 613, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Dailies/2990_Sand-sifting Specialist.json b/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Dailies/2990_Sand-sifting Specialist.json new file mode 100644 index 00000000..f08218d8 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Dailies/2990_Sand-sifting Specialist.json @@ -0,0 +1,179 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024217, + "Position": { + "X": 394.39978, + "Y": -119.58932, + "Z": -232.28815 + }, + "TerritoryId": 613, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1024218, + "Position": { + "X": 387.56384, + "Y": -119.795334, + "Z": -257.64862 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 322.45865, + "Y": -121.24298, + "Z": -314.65158 + }, + "TerritoryId": 613, + "InteractionType": "WalkTo", + "Fly": true, + "RestartNavigationIfCancelled": false + }, + { + "DataId": 2009109, + "Position": { + "X": 239.18518, + "Y": -74.99817, + "Z": -464.95764 + }, + "TerritoryId": 613, + "InteractionType": "Action", + "Action": "Inhale", + "Fly": true, + "RequiredQuestVariables": [ + null, + null, + null, + [16, 48, 128, 144], + null, + null + ] + }, + { + "DataId": 2009108, + "Position": { + "X": 286.33557, + "Y": -74.60144, + "Z": -499.01584 + }, + "TerritoryId": 613, + "InteractionType": "Action", + "Action": "Inhale", + "Fly": true, + "RequiredQuestVariables": [ + null, + null, + null, + [16, 48, 128, 160], + null, + null + ] + }, + { + "DataId": 2009106, + "Position": { + "X": 539.2385, + "Y": -56.26001, + "Z": -364.88904 + }, + "TerritoryId": 613, + "InteractionType": "Action", + "Action": "Inhale", + "Fly": true, + "RequiredQuestVariables": [ + null, + null, + null, + [16, 64, 160], + null, + null + ] + }, + { + "DataId": 2009107, + "Position": { + "X": 560.14343, + "Y": -75.547424, + "Z": -410.81866 + }, + "TerritoryId": 613, + "InteractionType": "Action", + "Action": "Inhale", + "Fly": true, + "RequiredQuestVariables": [ + null, + null, + null, + [48, 64, 144, 160], + null, + null + ] + }, + { + "DataId": 2009105, + "Position": { + "X": 613.94666, + "Y": -74.57086, + "Z": -400.04578 + }, + "TerritoryId": 613, + "InteractionType": "Action", + "Action": "Inhale", + "Fly": true, + "RequiredQuestVariables": [ + null, + null, + null, + [64, 128, 144], + null, + null + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 392.59683, + "Y": -119.589325, + "Z": -234.30063 + }, + "TerritoryId": 613, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Ruby Sea - Tamamizu" + }, + { + "DataId": 1024217, + "Position": { + "X": 394.39978, + "Y": -119.58932, + "Z": -232.28815 + }, + "TerritoryId": 613, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Story/2974_Under Wraps.json b/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Story/2974_Under Wraps.json new file mode 100644 index 00000000..dd7b9ed1 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Kojin/Story/2974_Under Wraps.json @@ -0,0 +1,135 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024215, + "Position": { + "X": 400.07617, + "Y": -119.589325, + "Z": -247.54712 + }, + "TerritoryId": 613, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1024231, + "Position": { + "X": 463.40125, + "Y": 56.86197, + "Z": -157.94617 + }, + "TerritoryId": 614, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Yanxia - Namai", + "DialogueChoices": [ + { + "Prompt": "TEXT_BANKJN002_02974_Q1_000_000", + "Type": "List", + "Answer": "TEXT_BANKJN002_02974_A1_000_001" + } + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2009169, + "Position": { + "X": 145.922, + "Y": 26.352295, + "Z": 456.9314 + }, + "TerritoryId": 614, + "InteractionType": "Snipe", + "Fly": true, + "Comment": "Snipe Namazu" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2009170, + "Position": { + "X": 205.31006, + "Y": 14.297607, + "Z": 712.76404 + }, + "TerritoryId": 614, + "InteractionType": "Snipe", + "Fly": true, + "Comment": "Snipe Namazu" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1024238, + "Position": { + "X": 302.72363, + "Y": 2.8619597, + "Z": 731.44116 + }, + "TerritoryId": 614, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1024244, + "Position": { + "X": 181.10925, + "Y": 6.1105657, + "Z": 553.2462 + }, + "TerritoryId": 614, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1024215, + "Position": { + "X": 400.07617, + "Y": -119.589325, + "Z": -247.54712 + }, + "TerritoryId": 613, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "Ruby Sea - Tamamizu", + "DialogueChoices": [ + { + "Prompt": "TEXT_BANKJN002_02974_Q3_000_000", + "Type": "List", + "Answer": "TEXT_BANKJN002_02974_A3_000_001" + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/AST/2409_East Meets West.json b/QuestPaths/4.x - Stormblood/Class Quests/AST/2409_East Meets West.json new file mode 100644 index 00000000..4b5af937 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/AST/2409_East Meets West.json @@ -0,0 +1,128 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1021184, + "Position": { + "X": 191.9126, + "Y": 234.44899, + "Z": 402.45667 + }, + "TerritoryId": 155, + "InteractionType": "Interact", + "StopDistance": 5, + "Fly": true, + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1021187, + "Position": { + "X": -1.9990234, + "Y": 0.74534994, + "Z": 360.25012 + }, + "TerritoryId": 153, + "InteractionType": "Interact", + "StopDistance": 5, + "Fly": true, + "AetheryteShortcut": "South Shroud - Camp Tranquil", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_JOBAST601_02409_Q1_000_000", + "Answer": "TEXT_JOBAST601_02409_A1_000_001" + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1021191, + "Position": { + "X": 195.1781, + "Y": -5.3999624, + "Z": -67.06348 + }, + "TerritoryId": 419, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 195.1781, + "Y": -5.3999624, + "Z": -67.06348 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + }, + "NextQuestId": 2410 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/AST/2410_Ride Like the Wind.json b/QuestPaths/4.x - Stormblood/Class Quests/AST/2410_Ride Like the Wind.json new file mode 100644 index 00000000..4383dc78 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/AST/2410_Ride Like the Wind.json @@ -0,0 +1,164 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1021191, + "Position": { + "X": 195.1781, + "Y": -5.3999624, + "Z": -67.06348 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 195.1781, + "Y": -5.3999624, + "Z": -67.06348 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1021221, + "Position": { + "X": 180.22424, + "Y": -5.4349146, + "Z": -55.588684 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "StopDistance": 5 + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 244.403, + "Y": 361.78677, + "Z": -616.2311 + }, + "TerritoryId": 155, + "InteractionType": "Combat", + "StopDistance": 5, + "Fly": true, + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "EnemySpawnType": "AutoOnEnterArea", + "ComplexCombatData": [ + { + "DataId": 7235, + "MinimumKillCount": 2 + } + ] + }, + { + "DataId": 1021222, + "Position": { + "X": 240.68054, + "Y": 362.1392, + "Z": -614.74023 + }, + "TerritoryId": 155, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1021191, + "Position": { + "X": 195.1781, + "Y": -5.3999624, + "Z": -67.06348 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 195.1781, + "Y": -5.3999624, + "Z": -67.06348 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + }, + "NextQuestId": 2411 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/AST/2411_Come Rain or Shrine.json b/QuestPaths/4.x - Stormblood/Class Quests/AST/2411_Come Rain or Shrine.json new file mode 100644 index 00000000..71290a6d --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/AST/2411_Come Rain or Shrine.json @@ -0,0 +1,233 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "MaximumDistance": 100 + } + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1021255, + "Position": { + "X": -0.35101318, + "Y": 11.965101, + "Z": 45.029297 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "StopDistance": 5, + "AethernetShortcut": [ + "[Ishgard] Athenaeum Astrologicum", + "[Ishgard] The Last Vigil" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1021259, + "Position": { + "X": -16.250854, + "Y": 0.09999631, + "Z": -31.784546 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "StopDistance": 4, + "AetheryteShortcut": "Kugane", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "CompletionQuestVariablesFlags": [ + 1, + null, + null, + null, + null, + 64 + ] + } + } + }, + { + "DataId": 1021256, + "Position": { + "X": 28.610596, + "Y": 4, + "Z": 53.57434 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "StopDistance": 4, + "AetheryteShortcut": "Kugane", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "CompletionQuestVariablesFlags": [ + 2, + null, + null, + null, + null, + null + ] + } + } + }, + { + "DataId": 1021260, + "Position": { + "X": -12.069946, + "Y": -4.9889293, + "Z": 15.579407 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "StopDistance": 4, + "AetheryteShortcut": "Kugane", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2007937, + "Position": { + "X": -51.621338, + "Y": 16.891724, + "Z": 0.045776367 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "StopDistance": 2, + "AetheryteShortcut": "Kugane", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -53.109528, + "Y": 15.469519, + "Z": 22.387312 + }, + "TerritoryId": 628, + "InteractionType": "Jump", + "JumpDestination": { + "Type": "RepeatedJumps", + "Position": { + "X": -57.846985, + "Y": -3, + "Z": 25.16211 + }, + "StopDistance": 4 + } + }, + { + "DataId": 1021261, + "Position": { + "X": -57.846985, + "Y": -3, + "Z": 25.16211 + }, + "StopDistance": 4, + "TerritoryId": 628, + "InteractionType": "SinglePlayerDuty", + "AetheryteShortcut": "Kugane", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1021262, + "Position": { + "X": 98.10022, + "Y": 4.0000014, + "Z": 87.44946 + }, + "TerritoryId": 628, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] The Ruby Bazaar" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 98.10022, + "Y": 4.0000014, + "Z": 87.44946 + }, + "TerritoryId": 628, + "MaximumDistance": 20 + } + } + }, + "NextQuestId": 2412 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/AST/2412_Behind Door Number Two.json b/QuestPaths/4.x - Stormblood/Class Quests/AST/2412_Behind Door Number Two.json new file mode 100644 index 00000000..881150a0 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/AST/2412_Behind Door Number Two.json @@ -0,0 +1,165 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1021262, + "Position": { + "X": 98.10022, + "Y": 4.0000014, + "Z": 87.44946 + }, + "TerritoryId": 628, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] The Ruby Bazaar" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 98.10022, + "Y": 4.0000014, + "Z": 87.44946 + }, + "TerritoryId": 628, + "MaximumDistance": 20 + } + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1021273, + "Position": { + "X": 469.84045, + "Y": 69.6416, + "Z": -68.37573 + }, + "TerritoryId": 614, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Yanxia - Namai" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1021274, + "Position": { + "X": -413.77893, + "Y": 55.093624, + "Z": 305.83655 + }, + "TerritoryId": 614, + "InteractionType": "Combat", + "StopDistance": 4, + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_JOBAST680_02412_Q1_000_024", + "Yes": true + } + ], + "AetheryteShortcut": "Yanxia - Namai", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 7236 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1021274, + "Position": { + "X": -413.77893, + "Y": 55.093624, + "Z": 305.83655 + }, + "TerritoryId": 614, + "InteractionType": "Interact", + "StopDistance": 4, + "Fly": false + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1021054, + "Position": { + "X": -36.66742, + "Y": 14.000003, + "Z": -58.457336 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AetheryteShortcut": "Kugane", + "StopDistance": 4, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1021262, + "Position": { + "X": 98.10022, + "Y": 4.0000014, + "Z": 87.44946 + }, + "TerritoryId": 628, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] The Ruby Bazaar" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 98.10022, + "Y": 4.0000014, + "Z": 87.44946 + }, + "TerritoryId": 628, + "MaximumDistance": 20 + } + } + }, + "NextQuestId": 2413 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/AST/2413_Foxfire.json b/QuestPaths/4.x - Stormblood/Class Quests/AST/2413_Foxfire.json new file mode 100644 index 00000000..624cdfe5 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/AST/2413_Foxfire.json @@ -0,0 +1,144 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1021262, + "Position": { + "X": 98.10022, + "Y": 4.0000014, + "Z": 87.44946 + }, + "TerritoryId": 628, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] The Ruby Bazaar" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 98.10022, + "Y": 4.0000014, + "Z": 87.44946 + }, + "TerritoryId": 628, + "MaximumDistance": 20 + } + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2008103, + "Position": { + "X": 44.84619, + "Y": 8.255066, + "Z": 178.11853 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AetheryteShortcut": "Kugane", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1021305, + "Position": { + "X": -61.356567, + "Y": -3, + "Z": 28.854736 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Thavnairian Consulate", + "[Kugane] Kogane Dori Markets" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2008104, + "Position": { + "X": 128.13, + "Y": 24.979004, + "Z": -0.22894287 + }, + "TerritoryId": 628, + "InteractionType": "SinglePlayerDuty", + "StopDistance": 3, + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Kogane Dori Markets", + "[Kugane] The Ruby Bazaar" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1021309, + "Position": { + "X": -47.501343, + "Y": 16.624714, + "Z": 9.719971 + }, + "TerritoryId": 628, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Kugane", + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": -47.501343, + "Y": 16.624714, + "Z": 9.719971 + }, + "TerritoryId": 628, + "MaximumDistance": 20 + } + } + }, + "NextQuestId": 3222 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/BTN/2622_Walking for Walker's.json b/QuestPaths/4.x - Stormblood/Class Quests/BTN/2622_Walking for Walker's.json index c59687c6..185e3825 100644 --- a/QuestPaths/4.x - Stormblood/Class Quests/BTN/2622_Walking for Walker's.json +++ b/QuestPaths/4.x - Stormblood/Class Quests/BTN/2622_Walking for Walker's.json @@ -188,6 +188,16 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 478, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "ItemId": 17946, + "ItemCount": 20 + } + ] + }, { "DataId": 1021349, "Position": { @@ -202,12 +212,6 @@ "[Idyllshire] Aetheryte Plaza", "[Idyllshire] West Idyllshire" ], - "RequiredGatheredItems": [ - { - "ItemId": 17946, - "ItemCount": 20 - } - ], "NextQuestId": 2623 } ] diff --git a/QuestPaths/4.x - Stormblood/Class Quests/BTN/2623_The White Death.json b/QuestPaths/4.x - Stormblood/Class Quests/BTN/2623_The White Death.json index fcc2e5f8..b2ef3384 100644 --- a/QuestPaths/4.x - Stormblood/Class Quests/BTN/2623_The White Death.json +++ b/QuestPaths/4.x - Stormblood/Class Quests/BTN/2623_The White Death.json @@ -122,6 +122,16 @@ { "Sequence": 6, "Steps": [ + { + "TerritoryId": 478, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "ItemId": 17947, + "ItemCount": 20 + } + ] + }, { "DataId": 1017106, "Position": { @@ -131,13 +141,7 @@ }, "TerritoryId": 478, "InteractionType": "Interact", - "AetheryteShortcut": "Idyllshire", - "RequiredGatheredItems": [ - { - "ItemId": 17947, - "ItemCount": 20 - } - ] + "AetheryteShortcut": "Idyllshire" } ] }, diff --git a/QuestPaths/4.x - Stormblood/Class Quests/BTN/2624_Edgyth's Winning Streak.json b/QuestPaths/4.x - Stormblood/Class Quests/BTN/2624_Edgyth's Winning Streak.json index b682928e..5fc30c90 100644 --- a/QuestPaths/4.x - Stormblood/Class Quests/BTN/2624_Edgyth's Winning Streak.json +++ b/QuestPaths/4.x - Stormblood/Class Quests/BTN/2624_Edgyth's Winning Streak.json @@ -156,6 +156,16 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 478, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "ItemId": 17948, + "ItemCount": 5 + } + ] + }, { "DataId": 1021349, "Position": { @@ -170,13 +180,7 @@ "[Idyllshire] Aetheryte Plaza", "[Idyllshire] West Idyllshire" ], - "Comment": "Eorzean Time: 4:00-5:59 AM/PM", - "RequiredGatheredItems": [ - { - "ItemId": 17948, - "ItemCount": 5 - } - ] + "Comment": "Eorzean Time: 4:00-5:59 AM/PM" } ] } diff --git a/QuestPaths/4.x - Stormblood/Class Quests/MNK/2426_A Fistful of Resolve.json b/QuestPaths/4.x - Stormblood/Class Quests/MNK/2426_A Fistful of Resolve.json new file mode 100644 index 00000000..262b5ec4 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/MNK/2426_A Fistful of Resolve.json @@ -0,0 +1,111 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006749, + "Position": { + "X": -30.47229, + "Y": 13.599918, + "Z": 95.26196 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Goldsmiths' Guild" + ], + "SkipConditions": { + "AethernetShortcutIf": { + "InSameTerritory": true + }, + "AetheryteShortcutIf": { + "InTerritory": [ + 130, + 131 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1013971, + "Position": { + "X": 15.854065, + "Y": 28.620823, + "Z": -682.76495 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Mor Dhona" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1022372, + "Position": { + "X": -224.90277, + "Y": 26.139341, + "Z": -353.38373 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo", + "Mount": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1022373, + "Position": { + "X": -81.22388, + "Y": 39.42472, + "Z": -336.96503 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "Mount": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013971, + "Position": { + "X": 15.854065, + "Y": 28.620823, + "Z": -682.76495 + }, + "TerritoryId": 156, + "InteractionType": "CompleteQuest", + "Fly": true, + "AetheryteShortcut": "Mor Dhona", + "DialogueChoices": [ + { + "Prompt": "TEXT_JOBMNK601_02426_Q2_000_000", + "Type": "List", + "Answer": "TEXT_JOBMNK601_02426_A2_000_001" + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/MNK/2427_Return of the Monk.json b/QuestPaths/4.x - Stormblood/Class Quests/MNK/2427_Return of the Monk.json new file mode 100644 index 00000000..24d018c7 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/MNK/2427_Return of the Monk.json @@ -0,0 +1,156 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013971, + "Position": { + "X": 15.854065, + "Y": 28.620823, + "Z": -682.76495 + }, + "TerritoryId": 156, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1022384, + "Position": { + "X": 76.920654, + "Y": 62.19928, + "Z": -669.4591 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Rhalgr's Reach", + "AethernetShortcut": [ + "[Rhalgr's Reach] Aetheryte Plaza", + "[Rhalgr's Reach] Fringes Gate" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1022387, + "Position": { + "X": 49.94275, + "Y": 118.155785, + "Z": -746.0899 + }, + "TerritoryId": 620, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Peaks - Ala Gannha" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1022390, + "Position": { + "X": 51.132935, + "Y": 118.44431, + "Z": -789.27295 + }, + "TerritoryId": 620, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 46.555176, + "Y": 117.997925, + "Z": -784.2374 + }, + "TerritoryId": 620, + "InteractionType": "Action", + "Action": "Form Shift" + }, + { + "DataId": 2008451, + "Position": { + "X": 46.555176, + "Y": 117.997925, + "Z": -784.2374 + }, + "TerritoryId": 620, + "InteractionType": "Action", + "Action": "Twin Snakes" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 2008451, + "Position": { + "X": 46.555176, + "Y": 117.997925, + "Z": -784.2374 + }, + "TerritoryId": 620, + "InteractionType": "Action", + "Action": "Dragon Kick" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 2008451, + "Position": { + "X": 46.555176, + "Y": 117.997925, + "Z": -784.2374 + }, + "TerritoryId": 620, + "InteractionType": "Action", + "Action": "Demolish" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1022390, + "Position": { + "X": 51.132935, + "Y": 118.44431, + "Z": -789.27295 + }, + "StopDistance": 5, + "TerritoryId": 620, + "InteractionType": "CompleteQuest", + "NextQuestId": 2428 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/MNK/2428_Cross-fist Training.json b/QuestPaths/4.x - Stormblood/Class Quests/MNK/2428_Cross-fist Training.json new file mode 100644 index 00000000..75a2a8d1 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/MNK/2428_Cross-fist Training.json @@ -0,0 +1,171 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1022390, + "Position": { + "X": 51.132935, + "Y": 118.44431, + "Z": -789.27295 + }, + "StopDistance": 5, + "TerritoryId": 620, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Peaks - Ala Gannha", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1003817, + "Position": { + "X": -74.57086, + "Y": 1.9999951, + "Z": -42.404846 + }, + "TerritoryId": 130, + "AetheryteShortcut": "Ul'dah", + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1022390, + "Position": { + "X": 51.132935, + "Y": 118.44431, + "Z": -789.27295 + }, + "TerritoryId": 620, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Peaks - Ala Gannha" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1022404, + "Position": { + "X": 76.43237, + "Y": 62.148823, + "Z": -667.2923 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Rhalgr's Reach", + "AethernetShortcut": [ + "[Rhalgr's Reach] Aetheryte Plaza", + "[Rhalgr's Reach] Fringes Gate" + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -96.72436, + "Y": 60.086643, + "Z": -602.3445 + }, + "TerritoryId": 612, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "Position": { + "X": -109.40343, + "Y": 60.039776, + "Z": -612.03217 + }, + "TerritoryId": 612, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 7217 + ], + "CombatDelaySecondsAtStart": 0, + "Mount": false + }, + { + "DataId": 1022405, + "Position": { + "X": -106.82843, + "Y": 60.07189, + "Z": -609.49115 + }, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1022411, + "Position": { + "X": -107.927124, + "Y": 60.035603, + "Z": -609.76575 + }, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1022412, + "Position": { + "X": 103.77649, + "Y": 118.18349, + "Z": -707.393 + }, + "TerritoryId": 620, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Peaks - Ala Gannha" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1023728, + "Position": { + "X": 51.132935, + "Y": 118.44431, + "Z": -789.27295 + }, + "TerritoryId": 620, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 2429 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/MNK/2429_Choices and Paths.json b/QuestPaths/4.x - Stormblood/Class Quests/MNK/2429_Choices and Paths.json new file mode 100644 index 00000000..4f7b3180 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/MNK/2429_Choices and Paths.json @@ -0,0 +1,156 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1023728, + "Position": { + "X": 51.132935, + "Y": 118.44431, + "Z": -789.27295 + }, + "TerritoryId": 620, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Peaks - Ala Gannha", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1022437, + "Position": { + "X": 81.467896, + "Y": 118.391884, + "Z": -792.7825 + }, + "TerritoryId": 620, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1022438, + "Position": { + "X": -61.112427, + "Y": -0.002525447, + "Z": -67.67377 + }, + "TerritoryId": 635, + "InteractionType": "Interact", + "Mount": true, + "AetheryteShortcut": "Rhalgr's Reach", + "AethernetShortcut": [ + "[Rhalgr's Reach] Aetheryte Plaza", + "[Rhalgr's Reach] Western Rhalgr's Reach" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1023728, + "Position": { + "X": 51.132935, + "Y": 118.44431, + "Z": -789.27295 + }, + "TerritoryId": 620, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Peaks - Ala Gannha" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1022439, + "Position": { + "X": 162.40173, + "Y": 49.7417, + "Z": -251.9112 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Rhalgr's Reach", + "AethernetShortcut": [ + "[Rhalgr's Reach] Aetheryte Plaza", + "[Rhalgr's Reach] Fringes Gate" + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1022442, + "Position": { + "X": -575.1583, + "Y": 110.899315, + "Z": -324.69672 + }, + "TerritoryId": 612, + "InteractionType": "SinglePlayerDuty", + "Fly": true, + "AetheryteShortcut": "Fringes - Castrum Oriens" + } + ] + }, + { + "Sequence": 6 + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1022446, + "Position": { + "X": -586.2974, + "Y": 113.00655, + "Z": -312.7337 + }, + "StopDistance": 4, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1022390, + "Position": { + "X": 51.132935, + "Y": 118.44431, + "Z": -789.27295 + }, + "TerritoryId": 620, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Peaks - Ala Gannha", + "Fly": true, + "NextQuestId": 2430 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/MNK/2430_The Power to Protect.json b/QuestPaths/4.x - Stormblood/Class Quests/MNK/2430_The Power to Protect.json new file mode 100644 index 00000000..21e6c078 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/MNK/2430_The Power to Protect.json @@ -0,0 +1,153 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1022390, + "Position": { + "X": 51.132935, + "Y": 118.44431, + "Z": -789.27295 + }, + "TerritoryId": 620, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Peaks - Ala Gannha", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "DialogueChoices": [ + { + "Prompt": "TEXT_JOBMNK700_02430_Q1_000_000", + "Type": "List", + "Answer": "TEXT_JOBMNK700_02430_A1_000_001" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1022532, + "Position": { + "X": 617.6089, + "Y": 271.0004, + "Z": -463.1266 + }, + "TerritoryId": 620, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1022548, + "Position": { + "X": 75.638916, + "Y": 62.111427, + "Z": -665.3696 + }, + "TerritoryId": 612, + "InteractionType": "SinglePlayerDuty", + "Fly": true, + "AetheryteShortcut": "Rhalgr's Reach", + "AethernetShortcut": [ + "[Rhalgr's Reach] Aetheryte Plaza", + "[Rhalgr's Reach] Fringes Gate" + ] + } + ] + }, + { + "Sequence": 3 + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1022539, + "Position": { + "X": 54.36792, + "Y": 118.22339, + "Z": -785.12244 + }, + "StopDistance": 7, + "TerritoryId": 620, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1022538, + "Position": { + "X": 51.31604, + "Y": 118.32745, + "Z": -786.9841 + }, + "StopDistance": 7, + "TerritoryId": 620, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1022392, + "Position": { + "X": 53.147095, + "Y": 118.4737, + "Z": -788.4489 + }, + "StopDistance": 7, + "TerritoryId": 620, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1022390, + "Position": { + "X": 51.132935, + "Y": 118.44431, + "Z": -789.27295 + }, + "StopDistance": 7, + "TerritoryId": 620, + "InteractionType": "CompleteQuest", + "NextQuestId": 3211 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/WAR/2900_Curious Gorge Meets His Match.json b/QuestPaths/4.x - Stormblood/Class Quests/WAR/2900_Curious Gorge Meets His Match.json new file mode 100644 index 00000000..d17c860b --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/WAR/2900_Curious Gorge Meets His Match.json @@ -0,0 +1,61 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006746, + "Position": { + "X": 460.65454, + "Y": 8.309061, + "Z": 74.47925 + }, + "TerritoryId": 137, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Eastern La Noscea - Costa Del Sol", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1023885, + "Position": { + "X": 217.30359, + "Y": 7.999984, + "Z": 686.427 + }, + "TerritoryId": 135, + "InteractionType": "Interact", + "AetheryteShortcut": "Lower La Noscea - Moraby Drydocks" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1023885, + "Position": { + "X": 217.30359, + "Y": 7.999984, + "Z": 686.427 + }, + "StopDistance": 5, + "TerritoryId": 135, + "InteractionType": "CompleteQuest", + "NextQuestId": 2901 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/WAR/2901_Field Training.json b/QuestPaths/4.x - Stormblood/Class Quests/WAR/2901_Field Training.json new file mode 100644 index 00000000..b558a026 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/WAR/2901_Field Training.json @@ -0,0 +1,121 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1023885, + "Position": { + "X": 217.30359, + "Y": 7.999984, + "Z": 686.427 + }, + "StopDistance": 5, + "TerritoryId": 135, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Lower La Noscea - Moraby Drydocks", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1022806, + "Position": { + "X": -164.5686, + "Y": 81.072655, + "Z": -294.33136 + }, + "TerritoryId": 180, + "InteractionType": "Interact", + "AetheryteShortcut": "Outer La Noscea - Camp Overlook", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2008649, + "Position": { + "X": -295.85718, + "Y": 53.20813, + "Z": -283.98572 + }, + "TerritoryId": 180, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 7500, + 7501 + ], + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2008650, + "Position": { + "X": -408.9876, + "Y": 46.860474, + "Z": -305.43988 + }, + "TerritoryId": 180, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 7500, + 7501 + ], + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1022811, + "Position": { + "X": -359.9756, + "Y": 58.723488, + "Z": -365.37732 + }, + "TerritoryId": 180, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1023885, + "Position": { + "X": 217.30359, + "Y": 7.999984, + "Z": 686.427 + }, + "StopDistance": 5, + "TerritoryId": 135, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Lower La Noscea - Moraby Drydocks", + "NextQuestId": 2902 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/WAR/2902_When Push Comes to Shove.json b/QuestPaths/4.x - Stormblood/Class Quests/WAR/2902_When Push Comes to Shove.json new file mode 100644 index 00000000..11b3f38a --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/WAR/2902_When Push Comes to Shove.json @@ -0,0 +1,158 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1023885, + "Position": { + "X": 217.30359, + "Y": 7.999984, + "Z": 686.427 + }, + "StopDistance": 5, + "TerritoryId": 135, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Lower La Noscea - Moraby Drydocks", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1022816, + "Position": { + "X": -4.3183594, + "Y": 39.78392, + "Z": 197.52808 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "AetheryteShortcut": "Eastern La Noscea - Wineport", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2008651, + "Position": { + "X": -4.8066406, + "Y": 39.475098, + "Z": 348.2871 + }, + "TerritoryId": 137, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 7500, + 7501 + ], + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2008652, + "Position": { + "X": -82.59711, + "Y": 38.437378, + "Z": 501.42664 + }, + "TerritoryId": 137, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 7502, + 7503 + ], + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2008653, + "Position": { + "X": -115.70923, + "Y": 49.66809, + "Z": 603.02124 + }, + "TerritoryId": 137, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 7502, + 7503 + ], + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1022821, + "Position": { + "X": -149.85895, + "Y": 55.805172, + "Z": 642.7251 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1022825, + "Position": { + "X": -208.08728, + "Y": 46.619385, + "Z": 467.73462 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1023885, + "Position": { + "X": 217.30359, + "Y": 7.999984, + "Z": 686.427 + }, + "StopDistance": 5, + "TerritoryId": 135, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Lower La Noscea - Moraby Drydocks", + "NextQuestId": 2903 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/WAR/2903_Going the Distance.json b/QuestPaths/4.x - Stormblood/Class Quests/WAR/2903_Going the Distance.json new file mode 100644 index 00000000..b9bc9fa7 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/WAR/2903_Going the Distance.json @@ -0,0 +1,168 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1023885, + "Position": { + "X": 217.30359, + "Y": 7.999984, + "Z": 686.427 + }, + "StopDistance": 5, + "TerritoryId": 135, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Lower La Noscea - Moraby Drydocks", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1019355, + "Position": { + "X": 556.8779, + "Y": -19.505642, + "Z": 397.14648 + }, + "TerritoryId": 622, + "InteractionType": "Interact", + "AetheryteShortcut": "Azim Steppe - Reunion", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1019347, + "Position": { + "X": 575.2803, + "Y": -19.505632, + "Z": 343.74 + }, + "TerritoryId": 622, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1019354, + "Position": { + "X": 573.6323, + "Y": -19.505655, + "Z": 311.6654 + }, + "TerritoryId": 622, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -186.52919, + "Y": 2.935472, + "Z": 369.28806 + }, + "StopDistance": 0.5, + "TerritoryId": 622, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 6641 + ], + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1022832, + "Position": { + "X": -183.76447, + "Y": 2.8128173, + "Z": 370.3822 + }, + "StopDistance": 5, + "TerritoryId": 622, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1022834, + "Position": { + "X": -339.25385, + "Y": 21.774029, + "Z": 268.6045 + }, + "TerritoryId": 622, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1022836, + "Position": { + "X": 525.10876, + "Y": -19.50681, + "Z": 403.3722 + }, + "TerritoryId": 622, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Azim Steppe - Reunion", + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_JOBWAR680_02903_Q1_000_075", + "Answer": "TEXT_JOBWAR680_02903_A1_000_076" + } + ], + "NextQuestId": 2904 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/WAR/2904_The Heart of the Problem.json b/QuestPaths/4.x - Stormblood/Class Quests/WAR/2904_The Heart of the Problem.json new file mode 100644 index 00000000..f3cb71d0 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/WAR/2904_The Heart of the Problem.json @@ -0,0 +1,165 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1022836, + "Position": { + "X": 525.10876, + "Y": -19.50681, + "Z": 403.3722 + }, + "TerritoryId": 622, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Azim Steppe - Reunion", + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 525.10876, + "Y": -19.50681, + "Z": 403.3722 + }, + "MaximumDistance": 100, + "TerritoryId": 622 + } + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1022837, + "Position": { + "X": 548.97375, + "Y": -19.503174, + "Z": 277.57678 + }, + "TerritoryId": 622, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 534.11285, + "Y": 38.830116, + "Z": -473.95575 + }, + "TerritoryId": 622, + "InteractionType": "WalkTo" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1022839, + "Position": { + "X": 467.46008, + "Y": 39.964607, + "Z": -440.8484 + }, + "TerritoryId": 622, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1022836, + "Position": { + "X": 525.10876, + "Y": -19.50681, + "Z": 403.3722 + }, + "TerritoryId": 622, + "InteractionType": "Interact", + "AetheryteShortcut": "Azim Steppe - Reunion", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1022836, + "Position": { + "X": 525.10876, + "Y": -19.50681, + "Z": 403.3722 + }, + "TerritoryId": 622, + "InteractionType": "Emote", + "Emote": "slap" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1022840, + "Position": { + "X": 233.38672, + "Y": 23.094816, + "Z": -234.57697 + }, + "TerritoryId": 622, + "InteractionType": "SinglePlayerDuty", + "Fly": true + } + ] + }, + { + "Sequence": 7 + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1022841, + "Position": { + "X": 233.17297, + "Y": 23.085413, + "Z": -234.42438 + }, + "TerritoryId": 622, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1023885, + "Position": { + "X": 217.30359, + "Y": 7.999984, + "Z": 686.427 + }, + "StopDistance": 5, + "TerritoryId": 135, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Lower La Noscea - Moraby Drydocks" + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/WHM/2414_Unease in East End.json b/QuestPaths/4.x - Stormblood/Class Quests/WHM/2414_Unease in East End.json new file mode 100644 index 00000000..c7385a02 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/WHM/2414_Unease in East End.json @@ -0,0 +1,158 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": -146.86935, + "Y": 8.006159, + "Z": 268.78055 + }, + "StopDistance": 0.25, + "TerritoryId": 153, + "AetheryteShortcut": "South Shroud - Camp Tranquil", + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -137.77051, + "Y": 7.7094107, + "Z": 275.28036 + }, + "DelaySeconds": 0.75 + }, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "Flying": "Unlocked", + "NearPosition": { + "Position": { + "X": -139.45221, + "Y": 8.712891, + "Z": 281.69678 + }, + "MaximumDistance": 3, + "TerritoryId": 153 + } + } + } + }, + { + "Position": { + "X": -139.04318, + "Y": 8.522301, + "Z": 280.0128 + }, + "TerritoryId": 153, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "Flying": "Locked" + } + } + }, + { + "DataId": 1006751, + "Position": { + "X": -139.45221, + "Y": 8.712891, + "Z": 281.69678 + }, + "TerritoryId": 153, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1000692, + "Position": { + "X": -258.8083, + "Y": -5.7735243, + "Z": -27.267883 + }, + "TerritoryId": 133, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Conjurers' Guild" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1018744, + "Position": { + "X": 87.96814, + "Y": 5.9457893, + "Z": 490.56213 + }, + "TerritoryId": 152, + "InteractionType": "Interact", + "AetheryteShortcut": "East Shroud - Hawthorne Hut", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1018746, + "Position": { + "X": -651.3619, + "Y": 130, + "Z": -527.8248 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "AetheryteShortcut": "Fringes - Castrum Oriens" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2007687, + "Position": { + "X": -640.8331, + "Y": 120.3479, + "Z": -291.52362 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1018752, + "Position": { + "X": -622.5834, + "Y": 130.26505, + "Z": -473.7469 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Fringes - Castrum Oriens", + "NextQuestId": 2415 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/WHM/2415_An Aura for Trouble.json b/QuestPaths/4.x - Stormblood/Class Quests/WHM/2415_An Aura for Trouble.json new file mode 100644 index 00000000..1e0614ff --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/WHM/2415_An Aura for Trouble.json @@ -0,0 +1,110 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1018753, + "Position": { + "X": -623.621, + "Y": 130.24214, + "Z": -474.72345 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Fringes - Castrum Oriens", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1018757, + "Position": { + "X": -437.2168, + "Y": 73.07981, + "Z": -100.23657 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -586.0533, + "Y": 54.95936, + "Z": 204.82178 + }, + "StopDistance": 0.5, + "TerritoryId": 612, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 7214 + ], + "Fly": true + }, + { + "DataId": 1018758, + "Position": { + "X": -586.0533, + "Y": 54.95936, + "Z": 204.82178 + }, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1000692, + "Position": { + "X": -258.8083, + "Y": -5.7735243, + "Z": -27.267883 + }, + "TerritoryId": 133, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Conjurers' Guild" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1018753, + "Position": { + "X": -623.621, + "Y": 130.24214, + "Z": -474.72345 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Fringes - Castrum Oriens", + "NextQuestId": 2416 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/WHM/2416_A Beacon for Bad Things.json b/QuestPaths/4.x - Stormblood/Class Quests/WHM/2416_A Beacon for Bad Things.json new file mode 100644 index 00000000..b9e8d1b6 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/WHM/2416_A Beacon for Bad Things.json @@ -0,0 +1,115 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1018753, + "Position": { + "X": -623.621, + "Y": 130.24214, + "Z": -474.72345 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Fringes - Castrum Oriens", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2007711, + "Position": { + "X": -488.0293, + "Y": 50.94983, + "Z": 86.96118 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2007712, + "Position": { + "X": -461.63123, + "Y": 57.14502, + "Z": 186.08374 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2007713, + "Position": { + "X": -529.9306, + "Y": 36.88098, + "Z": 451.16345 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1019090, + "Position": { + "X": -638.3002, + "Y": 38.30705, + "Z": 374.92932 + }, + "TerritoryId": 612, + "InteractionType": "SinglePlayerDuty", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1018753, + "Position": { + "X": -623.621, + "Y": 130.24214, + "Z": -474.72345 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Fringes - Castrum Oriens", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_JOBWHM650_02416_Q1_000_000", + "Answer": "TEXT_JOBWHM650_02416_A1_000_001" + } + ], + "NextQuestId": 2417 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/WHM/2417_The Problem with Padjals.json b/QuestPaths/4.x - Stormblood/Class Quests/WHM/2417_The Problem with Padjals.json new file mode 100644 index 00000000..42ca1d5a --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/WHM/2417_The Problem with Padjals.json @@ -0,0 +1,114 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1018753, + "Position": { + "X": -623.621, + "Y": 130.24214, + "Z": -474.72345 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Fringes - Castrum Oriens", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1019125, + "Position": { + "X": -651.81964, + "Y": 40.067055, + "Z": 370.80945 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -175.06683, + "Y": 59.779804, + "Z": -558.8312 + }, + "TerritoryId": 612, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 7215 + ], + "AetheryteShortcut": "Fringes - Castrum Oriens", + "Fly": true + }, + { + "DataId": 1019128, + "Position": { + "X": -175.06683, + "Y": 59.779804, + "Z": -558.8312 + }, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": -650.58673, + "Y": 39.856243, + "Z": 371.54846 + }, + "TerritoryId": 612, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1019131, + "Position": { + "X": -663.7522, + "Y": 43.594555, + "Z": 363.75977 + }, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1019132, + "Position": { + "X": -655.02405, + "Y": 40.43195, + "Z": 375.96704 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "NextQuestId": 2418 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/WHM/2418_What She Always Wanted.json b/QuestPaths/4.x - Stormblood/Class Quests/WHM/2418_What She Always Wanted.json new file mode 100644 index 00000000..6d49d91a --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Class Quests/WHM/2418_What She Always Wanted.json @@ -0,0 +1,141 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1019132, + "Position": { + "X": -655.02405, + "Y": 40.43195, + "Z": 375.96704 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Fringes - Castrum Oriens", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1018759, + "Position": { + "X": -636.8048, + "Y": 130, + "Z": -528.6183 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "AetheryteShortcut": "Fringes - Castrum Oriens" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -650.58673, + "Y": 39.856243, + "Z": 371.54846 + }, + "TerritoryId": 612, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1019130, + "Position": { + "X": -665.3696, + "Y": 43.594574, + "Z": 364.40063 + }, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1019130, + "Position": { + "X": -665.3696, + "Y": 43.594574, + "Z": 364.40063 + }, + "TerritoryId": 612, + "InteractionType": "Emote", + "Emote": "soothe", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_JOBWHM700_02418_Q1_000_000", + "Answer": "TEXT_JOBWHM700_02418_A1_000_001" + } + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -381.88757, + "Y": 40.283813, + "Z": 484.82483 + }, + "TerritoryId": 612, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 7216 + ], + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1019127, + "Position": { + "X": -381.88757, + "Y": 40.283813, + "Z": 484.82483 + }, + "TerritoryId": 612, + "InteractionType": "UseItem", + "ItemId": 2002053 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1019588, + "Position": { + "X": -382.71155, + "Y": 40.275818, + "Z": 484.36694 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Custom Deliveries/Adkiragh/2758_Purbol Rain.json b/QuestPaths/4.x - Stormblood/Custom Deliveries/Adkiragh/2758_Purbol Rain.json index 3ff30dc9..b26a2d25 100644 --- a/QuestPaths/4.x - Stormblood/Custom Deliveries/Adkiragh/2758_Purbol Rain.json +++ b/QuestPaths/4.x - Stormblood/Custom Deliveries/Adkiragh/2758_Purbol Rain.json @@ -13,7 +13,13 @@ "Z": 285.60303 }, "TerritoryId": 622, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Azim Steppe - Reunion", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/4.x - Stormblood/Custom Deliveries/Adkiragh/3177_Between a Rock and the Hard Place.json b/QuestPaths/4.x - Stormblood/Custom Deliveries/Adkiragh/3177_Between a Rock and the Hard Place.json index 8445dfd6..b9a89cc0 100644 --- a/QuestPaths/4.x - Stormblood/Custom Deliveries/Adkiragh/3177_Between a Rock and the Hard Place.json +++ b/QuestPaths/4.x - Stormblood/Custom Deliveries/Adkiragh/3177_Between a Rock and the Hard Place.json @@ -13,7 +13,13 @@ "Z": 42.98462 }, "TerritoryId": 478, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/4.x - Stormblood/Custom Deliveries/Adkiragh/S4_Adkiragh.json b/QuestPaths/4.x - Stormblood/Custom Deliveries/Adkiragh/S4_Adkiragh.json index 3912cfc6..99762b5b 100644 --- a/QuestPaths/4.x - Stormblood/Custom Deliveries/Adkiragh/S4_Adkiragh.json +++ b/QuestPaths/4.x - Stormblood/Custom Deliveries/Adkiragh/S4_Adkiragh.json @@ -5,6 +5,11 @@ { "Sequence": 0, "Steps": [ + { + "TerritoryId": 478, + "InteractionType": "Gather", + "ItemsToGather": [] + }, { "DataId": 1018393, "Position": { @@ -14,7 +19,6 @@ }, "TerritoryId": 478, "InteractionType": "Interact", - "RequiredGatheredItems": [], "AetheryteShortcut": "Idyllshire", "DialogueChoices": [ { diff --git a/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/2704_Fathoms Below.json b/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/2704_Fathoms Below.json index ef577617..21aa856c 100644 --- a/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/2704_Fathoms Below.json +++ b/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/2704_Fathoms Below.json @@ -13,7 +13,8 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "AetheryteShortcut": "Ruby Sea - Tamamizu" + "AetheryteShortcut": "Ruby Sea - Tamamizu", + "RestartNavigationIfCancelled": false }, { "Position": { @@ -23,7 +24,8 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "$": "Sui-no-Sato, NE outside" + "$": "Sui-no-Sato, NE outside", + "RestartNavigationIfCancelled": false }, { "DataId": 1023280, diff --git a/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/2705_A Part of Your World.json b/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/2705_A Part of Your World.json index 834a2cc1..d44e7aae 100644 --- a/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/2705_A Part of Your World.json +++ b/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/2705_A Part of Your World.json @@ -75,7 +75,8 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "AetheryteShortcut": "Ruby Sea - Tamamizu" + "AetheryteShortcut": "Ruby Sea - Tamamizu", + "RestartNavigationIfCancelled": false }, { "Position": { @@ -85,7 +86,8 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "$": "Sui-no-Sato, NE outside" + "$": "Sui-no-Sato, NE outside", + "RestartNavigationIfCancelled": false }, { "DataId": 1023280, diff --git a/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/2706_The Elixir of Life.json b/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/2706_The Elixir of Life.json index fed711ae..71256d76 100644 --- a/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/2706_The Elixir of Life.json +++ b/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/2706_The Elixir of Life.json @@ -80,7 +80,8 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "Mount": true + "Mount": true, + "RestartNavigationIfCancelled": false }, { "Position": { @@ -91,6 +92,7 @@ "TerritoryId": 613, "InteractionType": "WalkTo", "$": "Exile, outside", + "RestartNavigationIfCancelled": false, "Fly": true }, { @@ -153,7 +155,19 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "Mount": true + "Mount": true, + "RestartNavigationIfCancelled": false + }, + { + "Position": { + "X": 163.43794, + "Y": -133.31677, + "Z": 79.0077 + }, + "TerritoryId": 613, + "InteractionType": "WalkTo", + "DisableNavmesh": true, + "DelaySecondsAtStart": 2 }, { "Position": { @@ -164,6 +178,7 @@ "TerritoryId": 613, "InteractionType": "WalkTo", "$": "Sui-no-Sato, SW outside", + "RestartNavigationIfCancelled": false, "Fly": true }, { diff --git a/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/3140_Up Where They Trade All Day in the Sun.json b/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/3140_Up Where They Trade All Day in the Sun.json new file mode 100644 index 00000000..74c2e3d2 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/3140_Up Where They Trade All Day in the Sun.json @@ -0,0 +1,115 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1025878, + "Position": { + "X": 343.984, + "Y": -120.32947, + "Z": -306.0197 + }, + "TerritoryId": 613, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 322.1539, + "Y": -121.22571, + "Z": -314.2446 + }, + "TerritoryId": 613, + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false, + "Mount": true + }, + { + "Position": { + "X": 22.288645, + "Y": -196.2301, + "Z": -155.5739 + }, + "TerritoryId": 613, + "InteractionType": "WalkTo", + "$": "Sui-no-Sato, NE outside", + "RestartNavigationIfCancelled": false + }, + { + "DataId": 1025966, + "Position": { + "X": -10.51355, + "Y": -187.08374, + "Z": -95.07898 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2009560, + "Position": { + "X": 855.1002, + "Y": 1.1749268, + "Z": 876.0051 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] The Ruby Price" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1025968, + "Position": { + "X": 35.477173, + "Y": 5.9422755, + "Z": -143.63324 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] Rakuza District" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1025878, + "Position": { + "X": 343.984, + "Y": -120.32947, + "Z": -306.0197 + }, + "TerritoryId": 613, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ruby Sea - Tamamizu" + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/S3_Kurenai.json b/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/S3_Kurenai.json index 3fef30be..9b1f82dc 100644 --- a/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/S3_Kurenai.json +++ b/QuestPaths/4.x - Stormblood/Custom Deliveries/Kurenai/S3_Kurenai.json @@ -5,6 +5,11 @@ { "Sequence": 0, "Steps": [ + { + "TerritoryId": 613, + "InteractionType": "Gather", + "ItemsToGather": [] + }, { "DataId": 1025878, "Position": { @@ -14,7 +19,6 @@ }, "TerritoryId": 613, "InteractionType": "Interact", - "RequiredGatheredItems": [], "AetheryteShortcut": "Ruby Sea - Tamamizu", "DialogueChoices": [ { diff --git a/QuestPaths/4.x - Stormblood/Custom Deliveries/M'naago/3005_None Forgotten, None Forsaken.json b/QuestPaths/4.x - Stormblood/Custom Deliveries/M'naago/3005_None Forgotten, None Forsaken.json new file mode 100644 index 00000000..2f9ea862 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Custom Deliveries/M'naago/3005_None Forgotten, None Forsaken.json @@ -0,0 +1,55 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": -69.61145, + "Y": 0.00999999, + "Z": 62.405437 + }, + "TerritoryId": 635, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Rhalgr's Reach", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "DataId": 1019459, + "Position": { + "X": -70.54254, + "Y": 0.4599931, + "Z": 64.37781 + }, + "TerritoryId": 635, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1020337, + "Position": { + "X": 171.31299, + "Y": 13.02367, + "Z": -89.951965 + }, + "TerritoryId": 635, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Rhalgr's Reach] Western Rhalgr's Reach", + "[Rhalgr's Reach] Northeastern Rhalgr's Reach" + ] + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Custom Deliveries/M'naago/S2_M'naago.json b/QuestPaths/4.x - Stormblood/Custom Deliveries/M'naago/S2_M'naago.json index 4acf85fc..ba9858d8 100644 --- a/QuestPaths/4.x - Stormblood/Custom Deliveries/M'naago/S2_M'naago.json +++ b/QuestPaths/4.x - Stormblood/Custom Deliveries/M'naago/S2_M'naago.json @@ -5,6 +5,11 @@ { "Sequence": 0, "Steps": [ + { + "TerritoryId": 635, + "InteractionType": "Gather", + "ItemsToGather": [] + }, { "DataId": 1020337, "Position": { @@ -14,8 +19,11 @@ }, "TerritoryId": 635, "InteractionType": "Interact", - "RequiredGatheredItems": [], "AetheryteShortcut": "Rhalgr's Reach", + "AethernetShortcut": [ + "[Rhalgr's Reach] Aetheryte Plaza", + "[Rhalgr's Reach] Northeastern Rhalgr's Reach" + ], "DialogueChoices": [ { "Type": "List", diff --git a/QuestPaths/4.x - Stormblood/MSQ/A1.1-Peaks 1/2453_Best Served with Cold Steel.json b/QuestPaths/4.x - Stormblood/MSQ/A1.1-Peaks 1/2453_Best Served with Cold Steel.json index 822d5bc0..598dd113 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A1.1-Peaks 1/2453_Best Served with Cold Steel.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A1.1-Peaks 1/2453_Best Served with Cold Steel.json @@ -26,6 +26,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1019517, + "Position": { + "X": -653.0099, + "Y": 129.91537, + "Z": -510.67374 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2639 + }, { "DataId": 2007955, "Position": { diff --git a/QuestPaths/4.x - Stormblood/MSQ/A1.2-Fringes 1/2456_The Prodigal Daughter.json b/QuestPaths/4.x - Stormblood/MSQ/A1.2-Fringes 1/2456_The Prodigal Daughter.json index dd5c736b..802baf24 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A1.2-Fringes 1/2456_The Prodigal Daughter.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A1.2-Fringes 1/2456_The Prodigal Daughter.json @@ -44,7 +44,8 @@ "Z": -730.4951 }, "TerritoryId": 620, - "InteractionType": "Interact" + "InteractionType": "Interact", + "AetheryteShortcut": "Peaks - Ala Gannha" } ] }, @@ -64,4 +65,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/A1.2-Fringes 1/2955_Death by a Thousand Rocks.json b/QuestPaths/4.x - Stormblood/MSQ/A1.2-Fringes 1/2955_Death by a Thousand Rocks.json index 2f754049..d91c52ca 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A1.2-Fringes 1/2955_Death by a Thousand Rocks.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A1.2-Fringes 1/2955_Death by a Thousand Rocks.json @@ -34,7 +34,12 @@ "Z": -300.8011 }, "TerritoryId": 620, - "InteractionType": "Interact" + "InteractionType": "Interact", + "AetheryteShortcut": "Rhalgr's Reach", + "AethernetShortcut": [ + "[Rhalgr's Reach] Aetheryte Plaza", + "[Rhalgr's Reach] Peaks Gate" + ] } ] }, @@ -70,4 +75,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2461_Where Men Go as One.json b/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2461_Where Men Go as One.json index 25a91e36..dc90a555 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2461_Where Men Go as One.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2461_Where Men Go as One.json @@ -34,6 +34,7 @@ "Y": 13.02367, "Z": -88.91437 }, + "StopDistance": 5, "TerritoryId": 635, "InteractionType": "CompleteQuest" } diff --git a/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2466_Divide and Conquer.json b/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2466_Divide and Conquer.json index b82b0faa..26c349b9 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2466_Divide and Conquer.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2466_Divide and Conquer.json @@ -46,6 +46,25 @@ { "Sequence": 2, "Steps": [ + { + "DataId": 1020841, + "Position": { + "X": 146.01355, + "Y": 118.1921, + "Z": -730.4951 + }, + "TerritoryId": 620, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2655, + "AetheryteShortcut": "Peaks - Ala Gannha", + "SkipConditions": { + "AetheryteShortcutIf": { + "QuestsCompleted": [ + 2655 + ] + } + } + }, { "DataId": 1020432, "Position": { diff --git a/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2467_Lies, Damn Lies, and Pirates.json b/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2467_Lies, Damn Lies, and Pirates.json index d506cfda..a60bafac 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2467_Lies, Damn Lies, and Pirates.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2467_Lies, Damn Lies, and Pirates.json @@ -26,6 +26,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1019519, + "Position": { + "X": -613.1228, + "Y": 130, + "Z": -529.839 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2661 + }, { "DataId": 1020434, "Position": { @@ -59,4 +70,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2469_Not without Incident.json b/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2469_Not without Incident.json index 31f911bf..214a764a 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2469_Not without Incident.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2469_Not without Incident.json @@ -101,7 +101,7 @@ "Y": -6.9999976, "Z": -58.884644 }, - "StopDistance": 5, + "StopDistance": 6, "TerritoryId": 628, "InteractionType": "CompleteQuest" } diff --git a/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2635_Future Rust, Future Dust.json b/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2635_Future Rust, Future Dust.json index e0a4faba..9ee072bd 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2635_Future Rust, Future Dust.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2635_Future Rust, Future Dust.json @@ -86,6 +86,25 @@ } } }, + { + "DataId": 1019486, + "Position": { + "X": -116.746826, + "Y": 0.6342248, + "Z": -55.832825 + }, + "TerritoryId": 635, + "InteractionType": "Interact", + "$": "2 16 0 0 0 160 -> 3 16 0 0 0 176", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + }, { "Position": { "X": -42.27211, @@ -107,25 +126,6 @@ } } }, - { - "DataId": 1019486, - "Position": { - "X": -116.746826, - "Y": 0.6342248, - "Z": -55.832825 - }, - "TerritoryId": 635, - "InteractionType": "Interact", - "$": "2 16 0 0 0 160 -> 3 16 0 0 0 176", - "CompletionQuestVariablesFlags": [ - null, - null, - null, - null, - null, - 16 - ] - }, { "DataId": 1019490, "Position": { diff --git a/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2637_Ye Wayward Brothers.json b/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2637_Ye Wayward Brothers.json index c19ea6c2..c4665b5c 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2637_Ye Wayward Brothers.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A1.3-Rhalgr's Reach 2/2637_Ye Wayward Brothers.json @@ -144,8 +144,9 @@ }, "TerritoryId": 635, "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Rhalgr's Reach", "AethernetShortcut": [ - "[Rhalgr's Reach] Northeastern Rhalgr's Reach", + "[Rhalgr's Reach] Aetheryte Plaza", "[Rhalgr's Reach] Western Rhalgr's Reach" ] } diff --git a/QuestPaths/4.x - Stormblood/MSQ/A2-Kugane/2470_The Man from Ul'dah.json b/QuestPaths/4.x - Stormblood/MSQ/A2-Kugane/2470_The Man from Ul'dah.json index 18ae1d01..ce42de96 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A2-Kugane/2470_The Man from Ul'dah.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A2-Kugane/2470_The Man from Ul'dah.json @@ -12,7 +12,7 @@ "Y": -6.9999976, "Z": -55.832825 }, - "StopDistance": 5, + "StopDistance": 6, "TerritoryId": 628, "InteractionType": "AcceptQuest" } diff --git a/QuestPaths/4.x - Stormblood/MSQ/A2-Kugane/2475_Making the Catfish Sing.json b/QuestPaths/4.x - Stormblood/MSQ/A2-Kugane/2475_Making the Catfish Sing.json index 138f5594..e4731239 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A2-Kugane/2475_Making the Catfish Sing.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A2-Kugane/2475_Making the Catfish Sing.json @@ -30,6 +30,7 @@ "Y": 0, "Z": -2.3041382 }, + "StopDistance": 7, "TerritoryId": 639, "InteractionType": "Interact" } diff --git a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2479_To Bend with the Wind.json b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2479_To Bend with the Wind.json index 991de741..178c88a4 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2479_To Bend with the Wind.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2479_To Bend with the Wind.json @@ -35,6 +35,17 @@ { "Sequence": 2, "Steps": [ + { + "DataId": 1019168, + "Position": { + "X": 501.33508, + "Y": 34.0062, + "Z": 781.70435 + }, + "TerritoryId": 613, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2673 + }, { "Position": { "X": 553.3004, diff --git a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2481_Alisaie's Stones.json b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2481_Alisaie's Stones.json index fbe35d07..41434e28 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2481_Alisaie's Stones.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2481_Alisaie's Stones.json @@ -56,7 +56,15 @@ 6676 ], "ItemId": 2002093, - "$": "0 2 0 0 0 0 -> 16 17 0 0 0 128" + "$": "0 2 0 0 0 0 -> 16 17 0 0 0 128", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] }, { "DataId": 2007913, @@ -71,7 +79,15 @@ "KillEnemyDataIds": [ 6676 ], - "ItemId": 2002093 + "ItemId": 2002093, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] } ] }, @@ -103,6 +119,7 @@ "Y": 9.2068815, "Z": -661.21924 }, + "StopDistance": 7, "TerritoryId": 613, "InteractionType": "Interact" } diff --git a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2482_Under the Sea.json b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2482_Under the Sea.json index ff2d8b3d..f7c0381d 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2482_Under the Sea.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2482_Under the Sea.json @@ -26,6 +26,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1022102, + "Position": { + "X": 97.8866, + "Y": 2.096308, + "Z": -617.79205 + }, + "TerritoryId": 613, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2687 + }, { "DataId": 1019951, "Position": { diff --git a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2484_In Soroban We Trust.json b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2484_In Soroban We Trust.json index b3a2e566..3d9e4611 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2484_In Soroban We Trust.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2484_In Soroban We Trust.json @@ -26,6 +26,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1023357, + "Position": { + "X": 565.0873, + "Y": -62.272896, + "Z": -147.84473 + }, + "TerritoryId": 613, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2693 + }, { "DataId": 1019969, "Position": { @@ -34,7 +45,8 @@ "Z": -300.5265 }, "TerritoryId": 613, - "InteractionType": "Interact" + "InteractionType": "Interact", + "AetheryteShortcut": "Ruby Sea - Tamamizu" } ] }, @@ -49,7 +61,8 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "$": "Sui-no-Sato, NE outside" + "$": "Sui-no-Sato, NE outside", + "RestartNavigationIfCancelled": false }, { "DataId": 1019970, diff --git a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2486_In Darkness the Magatama Dreams.json b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2486_In Darkness the Magatama Dreams.json index 9b97dfe0..ed55fbaa 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2486_In Darkness the Magatama Dreams.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2486_In Darkness the Magatama Dreams.json @@ -20,6 +20,25 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1023280, + "Position": { + "X": -62.790894, + "Y": -198.96509, + "Z": -64.34735 + }, + "TerritoryId": 613, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2632, + "DialogueChoices": [ + { + "ExcelSheet": "quest/026/StmBdy001_02632", + "Type": "List", + "Prompt": "TEXT_STMBDY001_02632_Q1_000_050", + "Answer": "TEXT_STMBDY001_02632_A1_000_051" + } + ] + }, { "Position": { "X": 21.067955, @@ -28,7 +47,8 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "$": "Sui-no-Sato, NE inside" + "$": "Sui-no-Sato, NE inside", + "RestartNavigationIfCancelled": false }, { "DataId": 1019978, @@ -71,7 +91,8 @@ "Z": 221.51514 }, "TerritoryId": 613, - "InteractionType": "Interact" + "InteractionType": "Interact", + "Mount": false } ] }, diff --git a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2488_Breaking and Delivering.json b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2488_Breaking and Delivering.json index 9727c165..99b65195 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2488_Breaking and Delivering.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2488_Breaking and Delivering.json @@ -40,7 +40,8 @@ "Z": -314.00232 }, "TerritoryId": 613, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false }, { "DataId": 1019981, @@ -60,14 +61,26 @@ "Steps": [ { "Position": { - "X": -659.02277, - "Y": -21.210977, - "Z": 270.70654 + "X": -583.7968, + "Y": -58.207996, + "Z": 244.92668 }, "TerritoryId": 613, "InteractionType": "WalkTo", "Fly": true, - "StopDistance": 0.25 + "Mount": true + }, + { + "Position": { + "X": -655.3086, + "Y": 0, + "Z": 270.4341 + }, + "TerritoryId": 613, + "InteractionType": "WalkTo", + "Fly": true, + "DisableNavmesh": true, + "RestartNavigationIfCancelled": false }, { "Position": { diff --git a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2489_The Lord of the Revel.json b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2489_The Lord of the Revel.json index be1b52ee..18066fc0 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2489_The Lord of the Revel.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2489_The Lord of the Revel.json @@ -65,7 +65,8 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "DisableNavmesh": true + "DisableNavmesh": true, + "RestartNavigationIfCancelled": false }, { "DataId": 1019987, diff --git a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2490_Tide Goes in, Imperials Go Out.json b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2490_Tide Goes in, Imperials Go Out.json index a78c4ffa..73209be2 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2490_Tide Goes in, Imperials Go Out.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2490_Tide Goes in, Imperials Go Out.json @@ -20,6 +20,27 @@ { "Sequence": 1, "Steps": [ + { + "Position": { + "X": -780.3967, + "Y": 7.9621, + "Z": -446.48938 + }, + "TerritoryId": 613, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + } + }, { "DataId": 1019991, "Position": { @@ -47,6 +68,7 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", + "Mount": true, "SkipConditions": { "StepIf": { "CompletionQuestVariablesFlags": [ diff --git a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2491_A Silence in Three Parts.json b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2491_A Silence in Three Parts.json index 07fe24aa..a61964a7 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2491_A Silence in Three Parts.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2491_A Silence in Three Parts.json @@ -29,7 +29,8 @@ }, "TerritoryId": 613, "InteractionType": "WalkTo", - "TargetTerritoryId": 614 + "TargetTerritoryId": 614, + "Fly": true } ] }, diff --git a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2953_The Arrows of Misfortune.json b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2953_The Arrows of Misfortune.json index 84d1d3f5..07c4e990 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2953_The Arrows of Misfortune.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A3.1-Ruby Sea/2953_The Arrows of Misfortune.json @@ -61,6 +61,7 @@ "Y": 3.3707767, "Z": -534.4778 }, + "StopDistance": 7, "TerritoryId": 613, "InteractionType": "Interact" } @@ -76,6 +77,7 @@ "Y": 3.3707767, "Z": -534.4778 }, + "StopDistance": 7, "TerritoryId": 613, "InteractionType": "Interact" } diff --git a/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2492_Life after Doma.json b/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2492_Life after Doma.json index 67d15aaa..35e78862 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2492_Life after Doma.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2492_Life after Doma.json @@ -99,7 +99,8 @@ "TerritoryId": 614, "InteractionType": "WalkTo", "Fly": true, - "StopDistance": 0.25 + "StopDistance": 0.25, + "RestartNavigationIfCancelled": false }, { "DataId": 1020007, @@ -114,4 +115,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2494_The Ones We Leave Behind.json b/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2494_The Ones We Leave Behind.json index c3549b73..9f7df38e 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2494_The Ones We Leave Behind.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2494_The Ones We Leave Behind.json @@ -26,6 +26,28 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1019314, + "Position": { + "X": 421.77454, + "Y": -0.3000138, + "Z": -293.9651 + }, + "TerritoryId": 614, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2724 + }, + { + "DataId": 1019263, + "Position": { + "X": 451.56018, + "Y": 58.77665, + "Z": -188.3421 + }, + "TerritoryId": 614, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2728 + }, { "Position": { "X": 508.4545, @@ -51,6 +73,7 @@ "Y": 83.5696, "Z": 94.92627 }, + "StopDistance": 7, "TerritoryId": 614, "InteractionType": "Interact" } @@ -134,4 +157,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2495_A New Ruby Tithe.json b/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2495_A New Ruby Tithe.json index 44420f7a..1045490b 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2495_A New Ruby Tithe.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2495_A New Ruby Tithe.json @@ -66,6 +66,28 @@ { "Sequence": 3, "Steps": [ + { + "DataId": 1019316, + "Position": { + "X": 434.89734, + "Y": 68.02076, + "Z": -125.01721 + }, + "TerritoryId": 614, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2733 + }, + { + "DataId": 1019313, + "Position": { + "X": 465.26282, + "Y": 58.52148, + "Z": -171.09949 + }, + "TerritoryId": 614, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2730 + }, { "DataId": 1020024, "Position": { @@ -89,7 +111,8 @@ "Z": 147.23425 }, "TerritoryId": 614, - "InteractionType": "Interact" + "InteractionType": "Snipe", + "Comment": "Snipe soldiers" } ] }, @@ -104,7 +127,8 @@ "Z": 237.04883 }, "TerritoryId": 614, - "InteractionType": "Interact" + "InteractionType": "Snipe", + "Comment": "Snipe soldiers" } ] }, @@ -134,7 +158,8 @@ "Z": 603.2959 }, "TerritoryId": 614, - "InteractionType": "Interact" + "InteractionType": "Snipe", + "Comment": "Snipe soldiers" } ] }, diff --git a/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2496_The Will to Live.json b/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2496_The Will to Live.json index 040ec25b..9747cd69 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2496_The Will to Live.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2496_The Will to Live.json @@ -77,6 +77,7 @@ "Y": 14.6418705, "Z": 620.35547 }, + "StopDistance": 4, "TerritoryId": 614, "InteractionType": "Interact" } @@ -92,6 +93,7 @@ "Y": 14.64187, "Z": 619.8672 }, + "StopDistance": 4, "TerritoryId": 614, "InteractionType": "Interact" } @@ -135,7 +137,15 @@ "TerritoryId": 614, "InteractionType": "Emote", "Emote": "imperialsalute", - "$": "0 0 0 0 0 0 -> 17 0 0 0 0 64" + "$": "0 0 0 0 0 0 -> 17 0 0 0 0 64", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] }, { "DataId": 1020040, @@ -146,13 +156,25 @@ }, "TerritoryId": 614, "InteractionType": "Emote", - "Emote": "imperialsalute" + "Emote": "imperialsalute", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] } ] }, { "Sequence": 6, "Steps": [ + { + "TerritoryId": 614, + "InteractionType": "EquipRecommended" + }, { "DataId": 1020042, "Position": { diff --git a/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2497_Daughter of the Deep.json b/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2497_Daughter of the Deep.json index 0ca80fb5..1802bb77 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2497_Daughter of the Deep.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A3.2-Yanxia 1/2497_Daughter of the Deep.json @@ -20,10 +20,6 @@ { "Sequence": 1, "Steps": [ - { - "TerritoryId": 614, - "InteractionType": "EquipRecommended" - }, { "DataId": 2008011, "Position": { @@ -35,6 +31,15 @@ "InteractionType": "AttuneAetherCurrent", "AetherCurrentId": 2818199 }, + { + "Position": { + "X": 453.69717, + "Y": 14.463846, + "Z": 663.386 + }, + "TerritoryId": 614, + "InteractionType": "WalkTo" + }, { "DataId": 1020047, "Position": { @@ -172,7 +177,8 @@ "TerritoryId": 614, "InteractionType": "WalkTo", "Fly": true, - "StopDistance": 0.25 + "StopDistance": 0.25, + "RestartNavigationIfCancelled": false }, { "DataId": 1023787, diff --git a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2501_A Season for War.json b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2501_A Season for War.json index f48043a4..533d8913 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2501_A Season for War.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2501_A Season for War.json @@ -38,9 +38,9 @@ }, { "Position": { - "X": 259.30197, - "Y": 1.436653, - "Z": 337.41043 + "X": 395.68478, + "Y": -8.147073, + "Z": 299.55774 }, "TerritoryId": 622, "InteractionType": "Combat", diff --git a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2502_An Impossible Dream.json b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2502_An Impossible Dream.json index de26918f..deac66c3 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2502_An Impossible Dream.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2502_An Impossible Dream.json @@ -26,6 +26,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1019347, + "Position": { + "X": 575.2803, + "Y": -19.505632, + "Z": 343.74 + }, + "TerritoryId": 622, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2760 + }, { "DataId": 1020279, "Position": { @@ -54,4 +65,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2505_The Heart of Nations.json b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2505_The Heart of Nations.json index 55cb19b0..572207cb 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2505_The Heart of Nations.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2505_The Heart of Nations.json @@ -69,25 +69,6 @@ 128 ] }, - { - "DataId": 2008246, - "Position": { - "X": 641.7792, - "Y": 5.996765, - "Z": -355.6115 - }, - "TerritoryId": 622, - "InteractionType": "Interact", - "$": "1 16 0 0 0 128 -> 2 32 0 0 0 192", - "CompletionQuestVariablesFlags": [ - null, - null, - null, - null, - null, - 64 - ] - }, { "DataId": 2008247, "Position": { @@ -124,6 +105,25 @@ null, 16 ] + }, + { + "DataId": 2008246, + "Position": { + "X": 641.7792, + "Y": 5.996765, + "Z": -355.6115 + }, + "TerritoryId": 622, + "InteractionType": "Interact", + "$": "1 16 0 0 0 128 -> 2 32 0 0 0 192", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] } ] }, diff --git a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2506_A Trial Before the Trial.json b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2506_A Trial Before the Trial.json index 170a0045..b0302b05 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2506_A Trial Before the Trial.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2506_A Trial Before the Trial.json @@ -35,6 +35,17 @@ { "Sequence": 2, "Steps": [ + { + "DataId": 1019405, + "Position": { + "X": 343.58728, + "Y": 26.261887, + "Z": -326.55835 + }, + "TerritoryId": 622, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2771 + }, { "DataId": 1020671, "Position": { @@ -119,4 +130,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2509_The Labors of Magnai.json b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2509_The Labors of Magnai.json index 626bfa6d..7c762d51 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2509_The Labors of Magnai.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2509_The Labors of Magnai.json @@ -160,6 +160,24 @@ 16 ] }, + { + "DataId": 2008257, + "Position": { + "X": -194.2627, + "Y": -57.66388, + "Z": 105.97388 + }, + "TerritoryId": 622, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 1 + ] + }, { "DataId": 2008256, "Position": { @@ -216,24 +234,6 @@ null, 8 ] - }, - { - "DataId": 2008257, - "Position": { - "X": -194.2627, - "Y": -57.66388, - "Z": 105.97388 - }, - "TerritoryId": 622, - "InteractionType": "Interact", - "CompletionQuestVariablesFlags": [ - null, - null, - null, - null, - null, - 1 - ] } ] }, diff --git a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2511_Sworn Enemies of the Sun.json b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2511_Sworn Enemies of the Sun.json index 6474f1e8..8f209934 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2511_Sworn Enemies of the Sun.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2511_Sworn Enemies of the Sun.json @@ -42,15 +42,15 @@ "Sequence": 2, "Steps": [ { - "DataId": 1019424, + "DataId": 1023348, "Position": { - "X": 66.056274, - "Y": 114.904976, - "Z": -8.377258 + "X": 79.24011, + "Y": 114.90497, + "Z": 95.994385 }, "TerritoryId": 622, - "InteractionType": "Interact", - "TargetTerritoryId": 622 + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2782 }, { "Position": { @@ -61,7 +61,8 @@ "TerritoryId": 622, "InteractionType": "Emote", "Emote": "lookout", - "StopDistance": 0.25 + "StopDistance": 0.25, + "AetheryteShortcut": "Azim Steppe - Reunion" } ] }, diff --git a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2513_A Final Peace.json b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2513_A Final Peace.json index 2b902ebc..894c0392 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2513_A Final Peace.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2513_A Final Peace.json @@ -20,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1023193, + "Position": { + "X": -434.0429, + "Y": 2.5501096, + "Z": 650.01904 + }, + "TerritoryId": 622, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2791 + }, { "DataId": 1020280, "Position": { @@ -76,4 +87,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2515_Naadam.json b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2515_Naadam.json index c419c628..a37bb517 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2515_Naadam.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2515_Naadam.json @@ -20,6 +20,25 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1019386, + "Position": { + "X": 501.21313, + "Y": 40.836082, + "Z": -505.9129 + }, + "StopDistance": 7, + "TerritoryId": 622, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, { "DataId": 1019388, "Position": { @@ -90,24 +109,6 @@ null, 16 ] - }, - { - "DataId": 1019386, - "Position": { - "X": 501.21313, - "Y": 40.836082, - "Z": -505.9129 - }, - "TerritoryId": 622, - "InteractionType": "Interact", - "CompletionQuestVariablesFlags": [ - null, - null, - null, - null, - null, - 128 - ] } ] }, diff --git a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2517_In Crimson They Walked.json b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2517_In Crimson They Walked.json index 171c5596..3ed1759e 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2517_In Crimson They Walked.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2517_In Crimson They Walked.json @@ -30,7 +30,8 @@ }, "TerritoryId": 622, "InteractionType": "Interact", - "AetheryteShortcut": "Azim Steppe - Dawn Throne" + "AetheryteShortcut": "Azim Steppe - Dawn Throne", + "Fly": true } ] }, @@ -39,13 +40,14 @@ "Steps": [ { "Position": { - "X": 51.873592, - "Y": 114.90497, - "Z": 64.512596 + "X": 12.142036, + "Y": 121, + "Z": 63.4195 }, "TerritoryId": 622, "InteractionType": "WalkTo", - "Mount": true + "Mount": true, + "Fly": true }, { "DataId": 1019424, diff --git a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2518_The Hour of Reckoning.json b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2518_The Hour of Reckoning.json index 7102bd78..f9feca1a 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2518_The Hour of Reckoning.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A4-Azim Steppe/2518_The Hour of Reckoning.json @@ -75,4 +75,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2519_The Room Where It Happened.json b/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2519_The Room Where It Happened.json index b2ba2d76..58b462dd 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2519_The Room Where It Happened.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2519_The Room Where It Happened.json @@ -84,4 +84,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2520_Seeds of Despair.json b/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2520_Seeds of Despair.json index 02e832e7..f4276125 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2520_Seeds of Despair.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2520_Seeds of Despair.json @@ -34,7 +34,8 @@ "Z": -382.8031 }, "TerritoryId": 614, - "InteractionType": "Interact" + "InteractionType": "Interact", + "Fly": true } ] }, diff --git a/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2521_The Limits of Our Endurance.json b/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2521_The Limits of Our Endurance.json index af3d50b3..9dbfffe8 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2521_The Limits of Our Endurance.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2521_The Limits of Our Endurance.json @@ -34,7 +34,8 @@ "Z": -414.99963 }, "TerritoryId": 614, - "InteractionType": "Interact" + "InteractionType": "Interact", + "Fly": true } ] }, @@ -72,4 +73,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2523_On the Eve of Destiny.json b/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2523_On the Eve of Destiny.json index 1786d198..5350174a 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2523_On the Eve of Destiny.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2523_On the Eve of Destiny.json @@ -106,6 +106,7 @@ }, "TerritoryId": 614, "InteractionType": "CompleteQuest", + "Fly": true, "DialogueChoices": [ { "Type": "List", diff --git a/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2524_The Die Is Cast.json b/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2524_The Die Is Cast.json index f99aa383..2811433e 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2524_The Die Is Cast.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2524_The Die Is Cast.json @@ -86,6 +86,16 @@ { "Sequence": 3, "Steps": [ + { + "Position": { + "X": -364.42896, + "Y": 1.2300289, + "Z": -363.52563 + }, + "TerritoryId": 614, + "InteractionType": "WalkTo", + "Fly": true + }, { "DataId": 1020247, "Position": { @@ -94,8 +104,7 @@ "Z": -362.5086 }, "TerritoryId": 614, - "InteractionType": "Interact", - "Fly": true + "InteractionType": "Interact" } ] }, diff --git a/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2525_The World Turned Upside Down.json b/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2525_The World Turned Upside Down.json index 55f2b8eb..aeb5fba9 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2525_The World Turned Upside Down.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2525_The World Turned Upside Down.json @@ -103,7 +103,7 @@ "Y": -7.0001082, "Z": 53.81848 }, - "StopDistance": 7, + "StopDistance": 4, "TerritoryId": 628, "InteractionType": "CompleteQuest" } diff --git a/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2526_A Swift and Secret Departure.json b/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2526_A Swift and Secret Departure.json index 1312ff5b..c6d57975 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2526_A Swift and Secret Departure.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2526_A Swift and Secret Departure.json @@ -31,8 +31,9 @@ "TerritoryId": 628, "InteractionType": "Interact", "TargetTerritoryId": 639, + "AetheryteShortcut": "Kugane", "AethernetShortcut": [ - "[Kugane] Kogane Dori Markets", + "[Kugane] Aetheryte Plaza", "[Kugane] The Ruby Bazaar" ] } diff --git a/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2946_How Tataru Got Her Groove Back.json b/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2946_How Tataru Got Her Groove Back.json index 3b1adc94..bd5aa51e 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2946_How Tataru Got Her Groove Back.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A5-Yanxia 2/2946_How Tataru Got Her Groove Back.json @@ -89,9 +89,10 @@ }, "TerritoryId": 614, "InteractionType": "CompleteQuest", - "AetheryteShortcut": "Yanxia - House of the Fierce" + "AetheryteShortcut": "Yanxia - House of the Fierce", + "Fly": true } ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/A6.1-Fringes 2/2530_Rising Fortunes, Rising Spirits.json b/QuestPaths/4.x - Stormblood/MSQ/A6.1-Fringes 2/2530_Rising Fortunes, Rising Spirits.json index 0315248c..ff60e8f0 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A6.1-Fringes 2/2530_Rising Fortunes, Rising Spirits.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A6.1-Fringes 2/2530_Rising Fortunes, Rising Spirits.json @@ -59,6 +59,11 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 612, + "InteractionType": "AttuneAetheryte", + "Aetheryte": "Fringes - Peering Stones" + }, { "DataId": 1020578, "Position": { diff --git a/QuestPaths/4.x - Stormblood/MSQ/A6.1-Fringes 2/2531_The Lure of the Dream.json b/QuestPaths/4.x - Stormblood/MSQ/A6.1-Fringes 2/2531_The Lure of the Dream.json index 9fa4d564..1ff76231 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A6.1-Fringes 2/2531_The Lure of the Dream.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A6.1-Fringes 2/2531_The Lure of the Dream.json @@ -21,9 +21,15 @@ "Sequence": 1, "Steps": [ { + "DataId": 1020807, + "Position": { + "X": 433.9818, + "Y": 114.48304, + "Z": 233.29517 + }, "TerritoryId": 612, - "InteractionType": "AttuneAetheryte", - "Aetheryte": "Fringes - Peering Stones" + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2821 }, { "DataId": 2007971, @@ -44,7 +50,8 @@ }, "TerritoryId": 612, "InteractionType": "WalkTo", - "DisableNavmesh": true + "DisableNavmesh": true, + "Mount": true }, { "DataId": 1020817, diff --git a/QuestPaths/4.x - Stormblood/MSQ/A6.1-Fringes 2/2532_The Lady of Bliss.json b/QuestPaths/4.x - Stormblood/MSQ/A6.1-Fringes 2/2532_The Lady of Bliss.json index ef161cde..ccc351df 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A6.1-Fringes 2/2532_The Lady of Bliss.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A6.1-Fringes 2/2532_The Lady of Bliss.json @@ -21,6 +21,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1020821, + "Position": { + "X": 276.7223, + "Y": 76.853935, + "Z": -23.51416 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2816 + }, { "DataId": 1020589, "Position": { diff --git a/QuestPaths/4.x - Stormblood/MSQ/A6.2-Peaks 2/2536_Hells Open.json b/QuestPaths/4.x - Stormblood/MSQ/A6.2-Peaks 2/2536_Hells Open.json index 4a38f239..b619887a 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A6.2-Peaks 2/2536_Hells Open.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A6.2-Peaks 2/2536_Hells Open.json @@ -1,6 +1,9 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": ["JerryWester", "ewlame"], + "Author": [ + "JerryWester", + "ewlame" + ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/4.x - Stormblood/MSQ/A6.2-Peaks 2/2542_With Tired Hands We Toil.json b/QuestPaths/4.x - Stormblood/MSQ/A6.2-Peaks 2/2542_With Tired Hands We Toil.json index 451ae480..25b70b6a 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A6.2-Peaks 2/2542_With Tired Hands We Toil.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A6.2-Peaks 2/2542_With Tired Hands We Toil.json @@ -27,6 +27,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1020873, + "Position": { + "X": -327.96222, + "Y": 258.90652, + "Z": 757.3815 + }, + "TerritoryId": 620, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2842 + }, { "DataId": 2009008, "Position": { @@ -120,4 +131,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/A7-Lochs/2549_The Key to Victory.json b/QuestPaths/4.x - Stormblood/MSQ/A7-Lochs/2549_The Key to Victory.json index 659248b9..426b491e 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A7-Lochs/2549_The Key to Victory.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A7-Lochs/2549_The Key to Victory.json @@ -26,6 +26,48 @@ { "Sequence": 1, "Steps": [ + { + "Position": { + "X": -791.2012, + "Y": 46.3994, + "Z": -15.904689 + }, + "TerritoryId": 621, + "InteractionType": "WalkTo", + "TargetTerritoryId": 620, + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 620 + ], + "QuestsCompleted": [ + 2860 + ] + } + } + }, + { + "DataId": 1023167, + "Position": { + "X": 313.28296, + "Y": 324.51355, + "Z": 362.4475 + }, + "TerritoryId": 620, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2851 + }, + { + "DataId": 1020893, + "Position": { + "X": 283.77197, + "Y": 322.87146, + "Z": 752.34607 + }, + "TerritoryId": 620, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2860 + }, { "DataId": 1021705, "Position": { @@ -35,7 +77,8 @@ }, "StopDistance": 7, "TerritoryId": 621, - "InteractionType": "SinglePlayerDuty" + "InteractionType": "SinglePlayerDuty", + "AetheryteShortcut": "Lochs - Porta Praetoria" } ] }, @@ -49,6 +92,7 @@ "Y": 45.410225, "Z": 766.47595 }, + "StopDistance": 5, "TerritoryId": 621, "InteractionType": "CompleteQuest" } diff --git a/QuestPaths/4.x - Stormblood/MSQ/A7-Lochs/2550_The Resonant.json b/QuestPaths/4.x - Stormblood/MSQ/A7-Lochs/2550_The Resonant.json index fe1034c1..ccda8a09 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A7-Lochs/2550_The Resonant.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A7-Lochs/2550_The Resonant.json @@ -12,6 +12,7 @@ "Y": 45.410225, "Z": 766.47595 }, + "StopDistance": 5, "TerritoryId": 621, "InteractionType": "AcceptQuest" } @@ -99,7 +100,8 @@ }, "TerritoryId": 621, "InteractionType": "WalkTo", - "StopDistance": 0.25 + "StopDistance": 0.25, + "RestartNavigationIfCancelled": false }, { "Position": { diff --git a/QuestPaths/4.x - Stormblood/MSQ/A7-Lochs/2552_The Measure of His Reach.json b/QuestPaths/4.x - Stormblood/MSQ/A7-Lochs/2552_The Measure of His Reach.json index edb33ea0..5c01d821 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/A7-Lochs/2552_The Measure of His Reach.json +++ b/QuestPaths/4.x - Stormblood/MSQ/A7-Lochs/2552_The Measure of His Reach.json @@ -26,6 +26,50 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1022987, + "Position": { + "X": -662.13477, + "Y": 49.999794, + "Z": -48.874695 + }, + "TerritoryId": 621, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2881 + }, + { + "DataId": 1022992, + "Position": { + "X": -506.6148, + "Y": 8.7, + "Z": -40.299072 + }, + "TerritoryId": 621, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2877 + }, + { + "DataId": 1022990, + "Position": { + "X": -524.58997, + "Y": 8.688546, + "Z": -19.424805 + }, + "TerritoryId": 621, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2880 + }, + { + "DataId": 1022991, + "Position": { + "X": -539.6353, + "Y": 7.6119823, + "Z": 52.140015 + }, + "TerritoryId": 621, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 2883 + }, { "DataId": 2007993, "Position": { @@ -102,4 +146,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2963_The Darkness Below.json b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2963_The Darkness Below.json index 9921542b..c24a8f01 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2963_The Darkness Below.json +++ b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2963_The Darkness Below.json @@ -12,6 +12,7 @@ "Y": 0, "Z": 58.64038 }, + "StopDistance": 5, "TerritoryId": 635, "InteractionType": "AcceptQuest", "AetheryteShortcut": "Rhalgr's Reach", @@ -36,7 +37,14 @@ "TerritoryId": 621, "InteractionType": "Interact", "AetheryteShortcut": "Lochs - Ala Mhigan Quarter", - "$": "QW: 0 0 0 0 0 0 -> QW: 1 0 0 0 0 128" + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] }, { "DataId": 1024131, @@ -47,7 +55,24 @@ }, "TerritoryId": 621, "InteractionType": "Interact", - "$": "QW: 1 0 0 0 0 128 -> QW: 2 0 0 0 0 192", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "Position": { + "X": 682.593, + "Y": 69.99999, + "Z": 538.1847 + }, + "TerritoryId": 621, + "InteractionType": "WalkTo", "Fly": true }, { @@ -59,7 +84,14 @@ }, "TerritoryId": 621, "InteractionType": "Interact", - "Fly": true + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] } ] }, @@ -74,8 +106,7 @@ "Z": 489.76868 }, "TerritoryId": 621, - "InteractionType": "Interact", - "Fly": true + "InteractionType": "Interact" } ] }, @@ -91,9 +122,10 @@ }, "TerritoryId": 621, "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Lochs - Ala Mhigan Quarter", "Fly": true } ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2964_The Mad King's Trove.json b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2964_The Mad King's Trove.json index 8facd948..d23fe19c 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2964_The Mad King's Trove.json +++ b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2964_The Mad King's Trove.json @@ -12,6 +12,7 @@ "Y": 70, "Z": 576.0128 }, + "StopDistance": 5, "TerritoryId": 621, "InteractionType": "AcceptQuest", "AetheryteShortcut": "Lochs - Ala Mhigan Quarter", @@ -26,6 +27,18 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1023048, + "Position": { + "X": 497.76453, + "Y": 69.99941, + "Z": 583.7339 + }, + "TerritoryId": 621, + "InteractionType": "Interact", + "TargetTerritoryId": 621, + "Fly": true + }, { "DataId": 1024134, "Position": { @@ -99,10 +112,11 @@ "Y": 70, "Z": 576.0128 }, + "StopDistance": 6, "TerritoryId": 621, "InteractionType": "CompleteQuest" } ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2965_The Butcher's Blood.json b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2965_The Butcher's Blood.json index b09978d3..79615f5e 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2965_The Butcher's Blood.json +++ b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2965_The Butcher's Blood.json @@ -12,6 +12,7 @@ "Y": 70, "Z": 576.1653 }, + "StopDistance": 7, "TerritoryId": 621, "InteractionType": "AcceptQuest", "AetheryteShortcut": "Lochs - Ala Mhigan Quarter", @@ -49,6 +50,7 @@ "Y": 69.999916, "Z": 637.3845 }, + "StopDistance": 5, "TerritoryId": 621, "InteractionType": "Interact" } @@ -64,10 +66,18 @@ "Y": 69.9999, "Z": 634.76 }, + "StopDistance": 7, "TerritoryId": 621, - "InteractionType": "CompleteQuest" + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_STMBDB104_02965_Q1_000_000", + "Yes": true + } + ] } ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2966_Echoes of an Echo.json b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2966_Echoes of an Echo.json index 0fad695c..683ad95e 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2966_Echoes of an Echo.json +++ b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2966_Echoes of an Echo.json @@ -35,7 +35,14 @@ }, "TerritoryId": 621, "InteractionType": "Interact", - "Fly": true + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_STMBDB105_02966_Q1_000_000", + "Yes": true + } + ] } ] }, @@ -70,7 +77,8 @@ "X": -2.9769177, "Y": -1.3092512, "Z": -36.29651 - } + }, + "DelaySeconds": 0.1 }, "StopDistance": 0.25 }, @@ -87,7 +95,8 @@ "X": -2.8188858, "Y": 0.16235979, "Z": -38.626305 - } + }, + "DelaySeconds": 0.1 }, "StopDistance": 0.25 }, @@ -101,6 +110,7 @@ "TerritoryId": 738, "InteractionType": "Interact", "StopDistance": 4, + "DelaySecondsAtStart": 3, "$": "QW: 0 0 0 0 0 0 -> QW: 16 16 0 0 0 128" }, { @@ -156,4 +166,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2967_A Sultana's Strings.json b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2967_A Sultana's Strings.json index c044ad4c..accbb6f8 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2967_A Sultana's Strings.json +++ b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2967_A Sultana's Strings.json @@ -26,6 +26,22 @@ { "Sequence": 1, "Steps": [ + { + "TerritoryId": 131, + "InteractionType": "None", + "AetheryteShortcut": "Ul'dah" + }, + { + "DataId": 1011565, + "Position": { + "X": -78.8739, + "Y": 4, + "Z": -110.429565 + }, + "TerritoryId": 130, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 434 + }, { "DataId": 1001821, "Position": { @@ -39,7 +55,12 @@ "AethernetShortcut": [ "[Ul'dah] Aetheryte Plaza", "[Ul'dah] The Chamber of Rule" - ] + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, @@ -142,4 +163,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2968_A Sultana's Duty.json b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2968_A Sultana's Duty.json index db940a8b..4b430f94 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2968_A Sultana's Duty.json +++ b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2968_A Sultana's Duty.json @@ -85,20 +85,12 @@ "Sequence": 255, "Steps": [ { - "Position": { - "X": 12.5078335, - "Y": 4.1552944, - "Z": 45.718685 - }, "TerritoryId": 144, - "InteractionType": "Jump", - "JumpDestination": { - "Position": { - "X": 12.60962, - "Y": 4.2181597, - "Z": 49.651253 - } - } + "AethernetShortcut": [ + "[Gold Saucer] Entrance & Card Squares", + "[Gold Saucer] Wonder Square West" + ], + "InteractionType": "None" }, { "DataId": 1024043, @@ -113,4 +105,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2969_A Sultana's Resolve.json b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2969_A Sultana's Resolve.json index 5fdd5f68..44e6cceb 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2969_A Sultana's Resolve.json +++ b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2969_A Sultana's Resolve.json @@ -80,6 +80,7 @@ "Y": -2.0000012, "Z": -17.166443 }, + "StopDistance": 5, "TerritoryId": 212, "InteractionType": "Interact" } @@ -95,10 +96,11 @@ "Y": -2.0000012, "Z": -17.166443 }, + "StopDistance": 5, "TerritoryId": 212, "InteractionType": "CompleteQuest" } ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2970_Securing the Saltery.json b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2970_Securing the Saltery.json index 10759bdc..b7da884e 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2970_Securing the Saltery.json +++ b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2970_Securing the Saltery.json @@ -12,6 +12,7 @@ "Y": -2.0000012, "Z": -17.166443 }, + "StopDistance": 5, "TerritoryId": 212, "InteractionType": "AcceptQuest" } @@ -45,7 +46,8 @@ }, "TerritoryId": 621, "InteractionType": "Interact", - "Fly": true + "Fly": true, + "AetheryteShortcut": "Lochs - Porta Praetoria" } ] }, @@ -60,8 +62,9 @@ "Z": 196.55139 }, "TerritoryId": 621, - "InteractionType": "Interact", - "Comment": "Aim at jaw" + "InteractionType": "Snipe", + "Comment": "Aim at jaw", + "Fly": true } ] }, @@ -75,6 +78,7 @@ "Y": -0.3, "Z": 207.6294 }, + "StopDistance": 5, "TerritoryId": 621, "InteractionType": "Interact" } @@ -91,7 +95,7 @@ "Z": 282.7954 }, "TerritoryId": 621, - "InteractionType": "Interact", + "InteractionType": "Snipe", "Fly": true, "Comment": "Aim at nearest eye" } @@ -107,6 +111,7 @@ "Y": 3.1742485, "Z": 249.34766 }, + "StopDistance": 6, "TerritoryId": 621, "InteractionType": "Interact" } @@ -129,4 +134,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2971_A Blissful Arrival.json b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2971_A Blissful Arrival.json index 5a1e9602..ad3f298d 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2971_A Blissful Arrival.json +++ b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2971_A Blissful Arrival.json @@ -12,6 +12,7 @@ "Y": 11.183233, "Z": 187.02979 }, + "StopDistance": 5, "TerritoryId": 621, "InteractionType": "AcceptQuest" } @@ -20,6 +21,17 @@ { "Sequence": 1, "Steps": [ + { + "Position": { + "X": 528.8298, + "Y": 70, + "Z": 580.3701 + }, + "TerritoryId": 621, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Lochs - Ala Mhigan Quarter" + }, { "DataId": 2009047, "Position": { @@ -27,10 +39,9 @@ "Y": 69.962524, "Z": 577.3861 }, + "StopDistance": 4, "TerritoryId": 621, - "InteractionType": "Interact", - "Fly": true, - "AetheryteShortcut": "Lochs - Ala Mhigan Quarter" + "InteractionType": "Interact" } ] }, @@ -44,6 +55,7 @@ "Y": 70, "Z": 574.6699 }, + "StopDistance": 7, "TerritoryId": 621, "InteractionType": "Interact" } @@ -52,6 +64,22 @@ { "Sequence": 255, "Steps": [ + { + "DataId": 1023048, + "Position": { + "X": 497.76453, + "Y": 69.99941, + "Z": 583.7339 + }, + "TerritoryId": 621, + "InteractionType": "Interact", + "TargetTerritoryId": 621, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, { "DataId": 1024057, "Position": { @@ -66,4 +94,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2972_Return of the Bull.json b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2972_Return of the Bull.json index ec0914e7..ace6118a 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2972_Return of the Bull.json +++ b/QuestPaths/4.x - Stormblood/MSQ/B-4.1/2972_Return of the Bull.json @@ -12,6 +12,7 @@ "Y": 74.00002, "Z": 75.48633 }, + "StopDistance": 5, "TerritoryId": 621, "InteractionType": "AcceptQuest", "DialogueChoices": [ @@ -52,7 +53,14 @@ }, "TerritoryId": 621, "InteractionType": "Interact", - "Fly": true + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_STMBDB111_02972_Q2_000_000", + "Yes": true + } + ] } ] }, @@ -66,6 +74,7 @@ "Y": 122, "Z": -349.0807 }, + "StopDistance": 5, "TerritoryId": 737, "InteractionType": "SinglePlayerDuty" } @@ -99,6 +108,7 @@ "Y": 70, "Z": 525.5055 }, + "StopDistance": 6, "TerritoryId": 621, "InteractionType": "Interact" } @@ -114,6 +124,7 @@ "Y": 70, "Z": 525.5055 }, + "StopDistance": 6, "TerritoryId": 621, "InteractionType": "Interact" } @@ -140,4 +151,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3023_The Sword in the Store.json b/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3023_The Sword in the Store.json index 5e64545d..e71bf895 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3023_The Sword in the Store.json +++ b/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3023_The Sword in the Store.json @@ -12,6 +12,7 @@ "Y": 10.503965, "Z": -213.76367 }, + "StopDistance": 5, "TerritoryId": 628, "InteractionType": "AcceptQuest", "AetheryteShortcut": "Kugane", @@ -62,4 +63,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3024_Hope on the Waves.json b/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3024_Hope on the Waves.json index 7d6c5d52..ab3f9d51 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3024_Hope on the Waves.json +++ b/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3024_Hope on the Waves.json @@ -97,10 +97,11 @@ "Y": 11.709066, "Z": -283.0091 }, + "StopDistance": 7, "TerritoryId": 613, "InteractionType": "CompleteQuest" } ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3025_Elation and Trepidation.json b/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3025_Elation and Trepidation.json index 9faacdcf..4248027b 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3025_Elation and Trepidation.json +++ b/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3025_Elation and Trepidation.json @@ -12,6 +12,7 @@ "Y": 12.349811, "Z": -283.8026 }, + "StopDistance": 7, "TerritoryId": 613, "InteractionType": "AcceptQuest" } @@ -56,7 +57,14 @@ }, "TerritoryId": 614, "InteractionType": "Interact", - "$": "QW: 0 0 0 0 0 0 -> QW: 1 0 0 0 0 128" + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] }, { "DataId": 1019286, @@ -66,7 +74,15 @@ "Z": -425.3758 }, "TerritoryId": 614, - "InteractionType": "Interact" + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] } ] }, @@ -111,6 +127,7 @@ "Y": 36.90612, "Z": -524.71204 }, + "StopDistance": 4, "TerritoryId": 614, "InteractionType": "Interact" } @@ -119,16 +136,6 @@ { "Sequence": 255, "Steps": [ - { - "Position": { - "X": 228.99776, - "Y": 5.218606, - "Z": -407.7175 - }, - "TerritoryId": 614, - "InteractionType": "WalkTo", - "Fly": true - }, { "DataId": 1020524, "Position": { @@ -137,9 +144,11 @@ "Z": -433.24945 }, "TerritoryId": 614, - "InteractionType": "CompleteQuest" + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Yanxia - House of the Fierce", + "Fly": true } ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3026_Storm on the Horizon.json b/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3026_Storm on the Horizon.json index 5abb5ca4..ba83bedd 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3026_Storm on the Horizon.json +++ b/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3026_Storm on the Horizon.json @@ -50,6 +50,7 @@ "Y": 1.7862457, "Z": 738.9486 }, + "StopDistance": 5, "TerritoryId": 614, "InteractionType": "Interact" } @@ -86,43 +87,25 @@ "TargetTerritoryId": 759 }, { - "DataId": 162, - "Position": { - "X": 96.269165, - "Y": -3.4332886, - "Z": 81.01013 - }, "TerritoryId": 759, - "InteractionType": "Interact", - "Comment": "Aethernet Attunement: [Doman Enclave] Ferry Docks" + "InteractionType": "AttuneAethernetShard", + "AethernetShard": "[Doman Enclave] Ferry Docks" }, { - "DataId": 130, - "Position": { - "X": -61.57019, - "Y": 0.77819824, - "Z": 90.684326 - }, "TerritoryId": 759, - "InteractionType": "Interact", - "Comment": "Aethernet Attunement: [Doman Enclave] The Southern Enclave" - }, - { - "DataId": 129, - "Position": { - "X": 8.987488, - "Y": 0.8086548, - "Z": -105.85187 - }, - "TerritoryId": 759, - "InteractionType": "Interact", - "Comment": "Aethernet Attunement: [Doman Enclave] The Northern Enclave" + "InteractionType": "AttuneAethernetShard", + "AethernetShard": "[Doman Enclave] The Southern Enclave" }, { "TerritoryId": 759, "InteractionType": "AttuneAetheryte", "Aetheryte": "Doman Enclave" }, + { + "TerritoryId": 759, + "InteractionType": "AttuneAethernetShard", + "AethernetShard": "[Doman Enclave] The Northern Enclave" + }, { "DataId": 1024970, "Position": { @@ -132,6 +115,10 @@ }, "TerritoryId": 759, "InteractionType": "Interact", + "AethernetShortcut": [ + "[Doman Enclave] The Northern Enclave", + "[Doman Enclave] Aetheryte Plaza" + ], "DialogueChoices": [ { "Type": "List", @@ -178,6 +165,7 @@ "Y": 0.19999999, "Z": -4.837158 }, + "StopDistance": 7, "TerritoryId": 744, "InteractionType": "Interact" } @@ -210,4 +198,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3027_His Forgotten Home.json b/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3027_His Forgotten Home.json index 5e94b93a..480b6717 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3027_His Forgotten Home.json +++ b/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3027_His Forgotten Home.json @@ -59,6 +59,16 @@ { "Sequence": 3, "Steps": [ + { + "Position": { + "X": -347.07507, + "Y": 1.2300062, + "Z": -345.90344 + }, + "TerritoryId": 614, + "InteractionType": "WalkTo", + "Fly": true + }, { "DataId": 1024986, "Position": { @@ -67,8 +77,7 @@ "Z": -344.13672 }, "TerritoryId": 614, - "InteractionType": "SinglePlayerDuty", - "Fly": true + "InteractionType": "SinglePlayerDuty" } ] }, @@ -82,10 +91,11 @@ "Y": 17.720512, "Z": 301.59448 }, + "StopDistance": 5, "TerritoryId": 614, "InteractionType": "CompleteQuest" } ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3028_A Guilty Conscience.json b/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3028_A Guilty Conscience.json index b99143fc..ae2caa3b 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3028_A Guilty Conscience.json +++ b/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3028_A Guilty Conscience.json @@ -12,6 +12,7 @@ "Y": 17.720512, "Z": 301.59448 }, + "StopDistance": 5, "TerritoryId": 614, "InteractionType": "AcceptQuest" } @@ -67,4 +68,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3029_Rise of a New Sun.json b/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3029_Rise of a New Sun.json index 6f89975e..1a3edd65 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3029_Rise of a New Sun.json +++ b/QuestPaths/4.x - Stormblood/MSQ/C-4.2/3029_Rise of a New Sun.json @@ -13,7 +13,10 @@ "Z": -2.7619019 }, "TerritoryId": 744, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "DelaySecondsAtStart": 3, + "StopDistance": 1, + "$": "This may skip movement as the game thinks we're close enough at the start; unsure if delay helps" } ] }, @@ -56,6 +59,7 @@ "Y": 1.286227, "Z": 746.2118 }, + "StopDistance": 5, "TerritoryId": 614, "InteractionType": "Interact" } @@ -93,4 +97,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3070_Gosetsu and Tsuyu.json b/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3070_Gosetsu and Tsuyu.json index cdc7c89b..37c0320d 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3070_Gosetsu and Tsuyu.json +++ b/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3070_Gosetsu and Tsuyu.json @@ -74,9 +74,12 @@ }, "TerritoryId": 759, "InteractionType": "CompleteQuest", - "Comment": "AethernetShortcut: [Doman Enclave] Aetheryte Plaza -> [Doman Enclave] Ferry Docks" + "AethernetShortcut": [ + "[Doman Enclave] Aetheryte Plaza", + "[Doman Enclave] Ferry Docks" + ] } ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3071_Gone Like the Morning Dew.json b/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3071_Gone Like the Morning Dew.json index 68ab9388..dbf9f474 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3071_Gone Like the Morning Dew.json +++ b/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3071_Gone Like the Morning Dew.json @@ -36,7 +36,14 @@ "TerritoryId": 614, "InteractionType": "Interact", "Fly": true, - "$": "QW: 0 0 0 0 0 0 -> QW: 1 0 0 0 0 128" + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] }, { "DataId": 1019303, @@ -46,7 +53,15 @@ "Z": 512.47424 }, "TerritoryId": 614, - "InteractionType": "Interact" + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] } ] }, @@ -115,4 +130,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3074_The Primary Agreement.json b/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3074_The Primary Agreement.json index c5ac52f0..9a5fee8f 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3074_The Primary Agreement.json +++ b/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3074_The Primary Agreement.json @@ -60,6 +60,7 @@ "Y": -8.000055, "Z": 44.327393 }, + "StopDistance": 5, "TerritoryId": 786, "InteractionType": "Interact" } @@ -117,4 +118,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3075_Under the Moonlight.json b/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3075_Under the Moonlight.json index fd75aab2..920c183b 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3075_Under the Moonlight.json +++ b/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3075_Under the Moonlight.json @@ -40,6 +40,17 @@ { "Sequence": 2, "Steps": [ + { + "Position": { + "X": 70.965355, + "Y": 26.085297, + "Z": -607.26685 + }, + "TerritoryId": 621, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Lochs - Porta Praetoria" + }, { "DataId": 1025546, "Position": { @@ -48,9 +59,7 @@ "Z": -609.43005 }, "TerritoryId": 621, - "InteractionType": "Interact", - "Fly": true, - "AetheryteShortcut": "Lochs - Porta Praetoria" + "InteractionType": "Interact" } ] }, @@ -70,4 +79,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3076_Emissary of the Dawn.json b/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3076_Emissary of the Dawn.json index 05c5cf91..acc572af 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3076_Emissary of the Dawn.json +++ b/QuestPaths/4.x - Stormblood/MSQ/D-4.3/3076_Emissary of the Dawn.json @@ -28,7 +28,14 @@ "Z": 0.3689831 }, "TerritoryId": 351, - "InteractionType": "SinglePlayerDuty" + "InteractionType": "SinglePlayerDuty", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_STMBDD107_03076_Q1_100_012", + "Yes": true + } + ] } ] }, @@ -42,10 +49,11 @@ "Y": -1.1041565E-05, "Z": -11.734253 }, + "StopDistance": 5, "TerritoryId": 351, "InteractionType": "CompleteQuest" } ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3143_Sisterly Act.json b/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3143_Sisterly Act.json index 9d50c588..e047e82e 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3143_Sisterly Act.json +++ b/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3143_Sisterly Act.json @@ -12,6 +12,7 @@ "Y": -1.1041565E-05, "Z": -11.734253 }, + "StopDistance": 5, "TerritoryId": 351, "InteractionType": "AcceptQuest" } @@ -99,4 +100,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3144_Feel the Burn.json b/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3144_Feel the Burn.json index bfce7d3d..25ec9718 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3144_Feel the Burn.json +++ b/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3144_Feel the Burn.json @@ -54,10 +54,11 @@ "Y": -4.178714, "Z": 87.296875 }, + "StopDistance": 7, "TerritoryId": 759, "InteractionType": "CompleteQuest" } ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3145_Shadows in the Empire.json b/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3145_Shadows in the Empire.json index cc2bd52f..bcaa9b09 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3145_Shadows in the Empire.json +++ b/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3145_Shadows in the Empire.json @@ -12,6 +12,7 @@ "Y": -4.178714, "Z": 87.296875 }, + "StopDistance": 7, "TerritoryId": 759, "InteractionType": "AcceptQuest", "AetheryteShortcut": "Doman Enclave", @@ -43,7 +44,10 @@ } ], "TargetTerritoryId": 744, - "Comment": "AethernetShortcut: [Doman Enclave] Ferry Docks -> [Doman Enclave] Aetheryte Plaza" + "AethernetShortcut": [ + "[Doman Enclave] Ferry Docks", + "[Doman Enclave] Aetheryte Plaza" + ] } ] }, @@ -57,6 +61,7 @@ "Y": 0.021091362, "Z": -3.0060425 }, + "StopDistance": 7, "TerritoryId": 744, "InteractionType": "Interact" } @@ -85,7 +90,10 @@ }, "TerritoryId": 759, "InteractionType": "Interact", - "Comment": "AethernetShortcut: [Doman Enclave] Aetheryte Plaza -> [Doman Enclave] Ferry Docks" + "AethernetShortcut": [ + "[Doman Enclave] Aetheryte Plaza", + "[Doman Enclave] Ferry Docks" + ] } ] }, @@ -109,7 +117,10 @@ } ], "TargetTerritoryId": 744, - "Comment": "AethernetShortcut: [Doman Enclave] Ferry Docks -> [Doman Enclave] Aetheryte Plaza" + "AethernetShortcut": [ + "[Doman Enclave] Ferry Docks", + "[Doman Enclave] Aetheryte Plaza" + ] }, { "DataId": 1025597, @@ -124,4 +135,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3146_A Power in Slumber.json b/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3146_A Power in Slumber.json index e55780fd..0777eeda 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3146_A Power in Slumber.json +++ b/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3146_A Power in Slumber.json @@ -51,6 +51,7 @@ "Y": -19.30375, "Z": 271.99194 }, + "StopDistance": 6, "TerritoryId": 622, "InteractionType": "Interact" } @@ -73,4 +74,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3147_The Will of the Moon.json b/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3147_The Will of the Moon.json index 5c521f8b..cd563068 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3147_The Will of the Moon.json +++ b/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3147_The Will of the Moon.json @@ -12,6 +12,7 @@ "Y": 40.86853, "Z": -503.37988 }, + "StopDistance": 5, "TerritoryId": 622, "InteractionType": "AcceptQuest" } @@ -101,10 +102,11 @@ "Y": 40.836098, "Z": -508.20172 }, + "StopDistance": 5, "TerritoryId": 622, "InteractionType": "CompleteQuest" } ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3148_The Call.json b/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3148_The Call.json index feb70ed2..ede4cd62 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3148_The Call.json +++ b/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3148_The Call.json @@ -131,10 +131,11 @@ "Y": 80, "Z": 437.70496 }, + "StopDistance": 5, "TerritoryId": 621, "InteractionType": "CompleteQuest" } ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3149_Prelude in Violet.json b/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3149_Prelude in Violet.json index 15f45d46..7f81e8cd 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3149_Prelude in Violet.json +++ b/QuestPaths/4.x - Stormblood/MSQ/E-4.4/3149_Prelude in Violet.json @@ -12,6 +12,7 @@ "Y": 80, "Z": 437.70496 }, + "StopDistance": 5, "TerritoryId": 621, "InteractionType": "AcceptQuest", "AetheryteShortcut": "Lochs - Ala Mhigan Quarter", @@ -101,4 +102,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/F-4.5/3179_Soul Searching.json b/QuestPaths/4.x - Stormblood/MSQ/F-4.5/3179_Soul Searching.json index d9590cce..ed050bb3 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/F-4.5/3179_Soul Searching.json +++ b/QuestPaths/4.x - Stormblood/MSQ/F-4.5/3179_Soul Searching.json @@ -20,17 +20,6 @@ { "Sequence": 1, "Steps": [ - { - "Position": { - "X": 71.86769, - "Y": 204.99998, - "Z": 145.98666 - }, - "TerritoryId": 478, - "InteractionType": "WalkTo", - "TargetTerritoryId": 399, - "AetheryteShortcut": "Idyllshire" - }, { "DataId": 1026781, "Position": { @@ -40,6 +29,11 @@ }, "TerritoryId": 399, "InteractionType": "Interact", + "AetheryteShortcut": "Idyllshire", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], "Fly": true } ] @@ -60,4 +54,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/F-4.5/3180_A Defector's Tidings.json b/QuestPaths/4.x - Stormblood/MSQ/F-4.5/3180_A Defector's Tidings.json index c2861330..9d97cf8a 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/F-4.5/3180_A Defector's Tidings.json +++ b/QuestPaths/4.x - Stormblood/MSQ/F-4.5/3180_A Defector's Tidings.json @@ -30,6 +30,7 @@ "TerritoryId": 621, "InteractionType": "Interact", "AetheryteShortcut": "Lochs - Ala Mhigan Quarter", + "Fly": true, "DialogueChoices": [ { "Type": "YesNo", @@ -50,6 +51,7 @@ "Y": 69.99995, "Z": 521.599 }, + "StopDistance": 5, "TerritoryId": 621, "InteractionType": "Interact" } @@ -90,4 +92,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/F-4.5/3182_Parley on the Front Lines.json b/QuestPaths/4.x - Stormblood/MSQ/F-4.5/3182_Parley on the Front Lines.json index addb3a72..46719143 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/F-4.5/3182_Parley on the Front Lines.json +++ b/QuestPaths/4.x - Stormblood/MSQ/F-4.5/3182_Parley on the Front Lines.json @@ -102,7 +102,14 @@ "Answer": "TEXT_STMBDF104_03182_A3_000_001" } ], - "$": "QW: 0 0 0 0 0 0 -> QW: 1 0 0 0 0 64" + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] }, { "DataId": 1026817, @@ -121,7 +128,14 @@ "Answer": "TEXT_STMBDF104_03182_A2_000_001" } ], - "$": "QW: 1 0 0 0 0 64 -> QW: 2 0 0 0 0 96" + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] }, { "DataId": 1026818, @@ -138,6 +152,14 @@ "Prompt": "TEXT_STMBDF104_03182_Q1_000_000", "Answer": "TEXT_STMBDF104_03182_A1_000_001" } + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 ] } ] @@ -152,6 +174,7 @@ "Y": 0.014375329, "Z": 3.2807007 }, + "StopDistance": 7, "TerritoryId": 829, "InteractionType": "Interact" } @@ -167,10 +190,11 @@ "Y": 107.62999, "Z": 130.9071 }, + "StopDistance": 6, "TerritoryId": 829, "InteractionType": "CompleteQuest" } ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/F-4.5/3183_The Face of War.json b/QuestPaths/4.x - Stormblood/MSQ/F-4.5/3183_The Face of War.json index 37834969..c32f5c02 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/F-4.5/3183_The Face of War.json +++ b/QuestPaths/4.x - Stormblood/MSQ/F-4.5/3183_The Face of War.json @@ -15,6 +15,7 @@ "Y": 107.62999, "Z": 130.9071 }, + "StopDistance": 6, "TerritoryId": 829, "InteractionType": "AcceptQuest" } @@ -89,4 +90,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/MSQ/H-4.55/3185_A Requiem for Heroes.json b/QuestPaths/4.x - Stormblood/MSQ/H-4.55/3185_A Requiem for Heroes.json index 87faa68a..57a652e9 100644 --- a/QuestPaths/4.x - Stormblood/MSQ/H-4.55/3185_A Requiem for Heroes.json +++ b/QuestPaths/4.x - Stormblood/MSQ/H-4.55/3185_A Requiem for Heroes.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 830 - ], "QuestSequence": [ { "Sequence": 0, @@ -34,6 +31,7 @@ "StopDistance": 7, "TerritoryId": 621, "InteractionType": "Interact", + "TargetTerritoryId": 829, "DialogueChoices": [ { "Type": "YesNo", diff --git a/QuestPaths/4.x - Stormblood/Raid Quests/2928_The Hunt for Omega.json b/QuestPaths/4.x - Stormblood/Raid Quests/2928_The Hunt for Omega.json new file mode 100644 index 00000000..f3390265 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Raid Quests/2928_The Hunt for Omega.json @@ -0,0 +1,106 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1021926, + "Position": { + "X": 71.06128, + "Y": -0.10695544, + "Z": 59.372803 + }, + "TerritoryId": 635, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Rhalgr's Reach", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1021930, + "Position": { + "X": 112.41321, + "Y": 0.65204173, + "Z": 56.290405 + }, + "TerritoryId": 635, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1021933, + "Position": { + "X": 466.20886, + "Y": 69.27097, + "Z": 525.7495 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "AetheryteShortcut": "Fringes - Peering Stones", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1021941, + "Position": { + "X": 467.00232, + "Y": 69.270096, + "Z": 521.14136 + }, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1021937, + "Position": { + "X": 465.5984, + "Y": 69.25287, + "Z": 518.88293 + }, + "StopDistance": 7, + "TerritoryId": 612, + "InteractionType": "SinglePlayerDuty" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1021942, + "Position": { + "X": -208.57562, + "Y": -223.5, + "Z": -124.16266 + }, + "TerritoryId": 724, + "InteractionType": "CompleteQuest", + "NextQuestId": 2929 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Raid Quests/2929_Into the Deltascape.json b/QuestPaths/4.x - Stormblood/Raid Quests/2929_Into the Deltascape.json new file mode 100644 index 00000000..86aee81d --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Raid Quests/2929_Into the Deltascape.json @@ -0,0 +1,63 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1021942, + "Position": { + "X": -208.57562, + "Y": -223.5, + "Z": -124.16266 + }, + "TerritoryId": 724, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1021946, + "Position": { + "X": -211.01703, + "Y": -223.25, + "Z": -117.021484 + }, + "StopDistance": 6, + "TerritoryId": 724, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 724, + "InteractionType": "Duty", + "ContentFinderConditionId": 252 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1021942, + "Position": { + "X": -208.57562, + "Y": -223.5, + "Z": -124.16266 + }, + "TerritoryId": 724, + "InteractionType": "CompleteQuest", + "NextQuestId": 2930 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Raid Quests/2930_A Catastrophe Waiting.json b/QuestPaths/4.x - Stormblood/Raid Quests/2930_A Catastrophe Waiting.json new file mode 100644 index 00000000..2cf9ddfe --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Raid Quests/2930_A Catastrophe Waiting.json @@ -0,0 +1,64 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1021942, + "Position": { + "X": -208.57562, + "Y": -223.5, + "Z": -124.16266 + }, + "TerritoryId": 724, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1021946, + "Position": { + "X": -211.01703, + "Y": -223.25, + "Z": -117.021484 + }, + "StopDistance": 6, + "TerritoryId": 724, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 724, + "InteractionType": "Duty", + "ContentFinderConditionId": 253 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1021943, + "Position": { + "X": -207.20227, + "Y": -223.50002, + "Z": -124.95618 + }, + "StopDistance": 7, + "TerritoryId": 724, + "InteractionType": "CompleteQuest", + "NextQuestId": 2931 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Raid Quests/2931_The Croak Queen.json b/QuestPaths/4.x - Stormblood/Raid Quests/2931_The Croak Queen.json new file mode 100644 index 00000000..fc0551c3 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Raid Quests/2931_The Croak Queen.json @@ -0,0 +1,65 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1021942, + "Position": { + "X": -208.57562, + "Y": -223.5, + "Z": -124.16266 + }, + "StopDistance": 7, + "TerritoryId": 724, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1021946, + "Position": { + "X": -211.01703, + "Y": -223.25, + "Z": -117.021484 + }, + "StopDistance": 6, + "TerritoryId": 724, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 724, + "InteractionType": "Duty", + "ContentFinderConditionId": 254 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1021942, + "Position": { + "X": -208.57562, + "Y": -223.5, + "Z": -124.16266 + }, + "StopDistance": 6, + "TerritoryId": 724, + "InteractionType": "CompleteQuest", + "NextQuestId": 2932 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Raid Quests/2932_A Void at All Costs.json b/QuestPaths/4.x - Stormblood/Raid Quests/2932_A Void at All Costs.json new file mode 100644 index 00000000..f1f7a00d --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Raid Quests/2932_A Void at All Costs.json @@ -0,0 +1,65 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1021942, + "Position": { + "X": -208.57562, + "Y": -223.5, + "Z": -124.16266 + }, + "StopDistance": 7, + "TerritoryId": 724, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1021946, + "Position": { + "X": -211.01703, + "Y": -223.25, + "Z": -117.021484 + }, + "StopDistance": 6, + "TerritoryId": 724, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 724, + "InteractionType": "Duty", + "ContentFinderConditionId": 255 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1021949, + "Position": { + "X": 462.6687, + "Y": 69.02547, + "Z": 515.06824 + }, + "StopDistance": 5, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "NextQuestId": 2933 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Raid Quests/2933_The Anomaly.json b/QuestPaths/4.x - Stormblood/Raid Quests/2933_The Anomaly.json new file mode 100644 index 00000000..ee0be5a5 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Raid Quests/2933_The Anomaly.json @@ -0,0 +1,105 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1021949, + "Position": { + "X": 462.6687, + "Y": 69.02547, + "Z": 515.06824 + }, + "StopDistance": 5, + "TerritoryId": 612, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1023687, + "Position": { + "X": 112.7489, + "Y": 0.65204155, + "Z": 60.227295 + }, + "TerritoryId": 635, + "InteractionType": "Interact", + "AetheryteShortcut": "Rhalgr's Reach" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1021952, + "Position": { + "X": 40.146484, + "Y": -19.000002, + "Z": 94.92627 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Airship Landing" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1021956, + "Position": { + "X": 4.257263, + "Y": 0.002998305, + "Z": -0.4730835 + }, + "TerritoryId": 636, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1021953, + "Position": { + "X": 41.550293, + "Y": -19.000004, + "Z": 95.26196 + }, + "TerritoryId": 132, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1023687, + "Position": { + "X": 112.7489, + "Y": 0.65204155, + "Z": 60.227295 + }, + "TerritoryId": 635, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Rhalgr's Reach", + "NextQuestId": 3031 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Raid Quests/3031_Return to the Rift.json b/QuestPaths/4.x - Stormblood/Raid Quests/3031_Return to the Rift.json new file mode 100644 index 00000000..5f7d792b --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Raid Quests/3031_Return to the Rift.json @@ -0,0 +1,55 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1023687, + "Position": { + "X": 112.7489, + "Y": 0.65204155, + "Z": 60.227295 + }, + "TerritoryId": 635, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1021933, + "Position": { + "X": 466.20886, + "Y": 69.27097, + "Z": 525.7495 + }, + "TerritoryId": 612, + "InteractionType": "SinglePlayerDuty", + "AetheryteShortcut": "Fringes - Peering Stones", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1024788, + "Position": { + "X": -86.07617, + "Y": -72.25, + "Z": 181.47546 + }, + "StopDistance": 7, + "TerritoryId": 756, + "InteractionType": "CompleteQuest", + "NextQuestId": 3032 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Raid Quests/3032_No Slowing Down.json b/QuestPaths/4.x - Stormblood/Raid Quests/3032_No Slowing Down.json new file mode 100644 index 00000000..0b798f4c --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Raid Quests/3032_No Slowing Down.json @@ -0,0 +1,65 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024788, + "Position": { + "X": -86.07617, + "Y": -72.25, + "Z": 181.47546 + }, + "StopDistance": 7, + "TerritoryId": 756, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1024747, + "Position": { + "X": -88.304016, + "Y": -72.25, + "Z": 169.17664 + }, + "StopDistance": 6, + "TerritoryId": 756, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 756, + "InteractionType": "Duty", + "ContentFinderConditionId": 286 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1024788, + "Position": { + "X": -86.07617, + "Y": -72.25, + "Z": 181.47546 + }, + "StopDistance": 7, + "TerritoryId": 756, + "InteractionType": "CompleteQuest", + "NextQuestId": 3033 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Raid Quests/3033_An Unfinished Masterpiece.json b/QuestPaths/4.x - Stormblood/Raid Quests/3033_An Unfinished Masterpiece.json new file mode 100644 index 00000000..4a1e669c --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Raid Quests/3033_An Unfinished Masterpiece.json @@ -0,0 +1,80 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024788, + "Position": { + "X": -86.07617, + "Y": -72.25, + "Z": 181.47546 + }, + "StopDistance": 7, + "TerritoryId": 756, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1024790, + "Position": { + "X": -81.92572, + "Y": -72.25, + "Z": 172.7168 + }, + "StopDistance": 5, + "TerritoryId": 756, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 756, + "InteractionType": "Duty", + "ContentFinderConditionId": 287 + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1024788, + "Position": { + "X": -86.07617, + "Y": -72.25, + "Z": 181.47546 + }, + "StopDistance": 7, + "TerritoryId": 756, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1024749, + "Position": { + "X": 463.79797, + "Y": 69.36809, + "Z": 520.31726 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "NextQuestId": 3034 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Raid Quests/3034_Won't Let You Pass.json b/QuestPaths/4.x - Stormblood/Raid Quests/3034_Won't Let You Pass.json new file mode 100644 index 00000000..0a610909 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Raid Quests/3034_Won't Let You Pass.json @@ -0,0 +1,98 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024750, + "Position": { + "X": 464.28625, + "Y": 69.317245, + "Z": 519.3103 + }, + "StopDistance": 5, + "TerritoryId": 612, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1021947, + "Position": { + "X": 476.73767, + "Y": 69.83099, + "Z": 526.604 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_STMBDR204_03034_SYSTEM_000_026", + "Yes": true + } + ] + }, + { + "DataId": 1024853, + "Position": { + "X": -86.71704, + "Y": -72.25, + "Z": 179.58337 + }, + "StopDistance": 7, + "TerritoryId": 756, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1024747, + "Position": { + "X": -88.304016, + "Y": -72.25, + "Z": 169.17664 + }, + "StopDistance": 7, + "TerritoryId": 756, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 756, + "InteractionType": "Duty", + "ContentFinderConditionId": 288 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1024788, + "Position": { + "X": -86.07617, + "Y": -72.25, + "Z": 181.47546 + }, + "StopDistance": 7, + "TerritoryId": 756, + "InteractionType": "CompleteQuest", + "NextQuestId": 3035 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Raid Quests/3035_Test World of Ruin.json b/QuestPaths/4.x - Stormblood/Raid Quests/3035_Test World of Ruin.json new file mode 100644 index 00000000..01750617 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Raid Quests/3035_Test World of Ruin.json @@ -0,0 +1,83 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024853, + "Position": { + "X": -86.71704, + "Y": -72.25, + "Z": 179.58337 + }, + "StopDistance": 7, + "TerritoryId": 756, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1024747, + "Position": { + "X": -88.304016, + "Y": -72.25, + "Z": 169.17664 + }, + "StopDistance": 7, + "TerritoryId": 756, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 756, + "InteractionType": "Duty", + "ContentFinderConditionId": 289 + } + ] + }, + { + "Sequence": 3 + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1021947, + "Position": { + "X": 476.73767, + "Y": 69.83099, + "Z": 526.604 + }, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1023687, + "Position": { + "X": 112.7489, + "Y": 0.65204155, + "Z": 60.227295 + }, + "TerritoryId": 635, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Rhalgr's Reach", + "NextQuestId": 3154 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Raid Quests/3154_In the Beginning, There Was Chaos.json b/QuestPaths/4.x - Stormblood/Raid Quests/3154_In the Beginning, There Was Chaos.json new file mode 100644 index 00000000..17dd09d3 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Raid Quests/3154_In the Beginning, There Was Chaos.json @@ -0,0 +1,90 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1023687, + "Position": { + "X": 112.7489, + "Y": 0.65204155, + "Z": 60.227295 + }, + "TerritoryId": 635, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1021937, + "Position": { + "X": 465.5984, + "Y": 69.25287, + "Z": 518.88293 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "AetheryteShortcut": "Fringes - Peering Stones", + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_STMBDR301_03154_Q2_000_051", + "Answer": "TEXT_STMBDR301_03154_A2_000_052" + } + ] + } + ] + }, + { + "Sequence": 2 + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1026450, + "Position": { + "X": -35.01947, + "Y": -16.150002, + "Z": 156.20654 + }, + "TerritoryId": 807, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "TerritoryId": 807, + "InteractionType": "Duty", + "ContentFinderConditionId": 587 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1026453, + "Position": { + "X": -34.836426, + "Y": -16.15, + "Z": 153.8872 + }, + "StopDistance": 5, + "TerritoryId": 807, + "InteractionType": "CompleteQuest", + "NextQuestId": 3155 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Raid Quests/3155_And Like Fire Was His Mane.json b/QuestPaths/4.x - Stormblood/Raid Quests/3155_And Like Fire Was His Mane.json new file mode 100644 index 00000000..4816cb77 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Raid Quests/3155_And Like Fire Was His Mane.json @@ -0,0 +1,49 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1026452, + "Position": { + "X": -35.01947, + "Y": -16.150002, + "Z": 156.11499 + }, + "StopDistance": 7, + "TerritoryId": 807, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "TerritoryId": 807, + "InteractionType": "Duty", + "ContentFinderConditionId": 588 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1026450, + "Position": { + "X": -35.01947, + "Y": -16.150002, + "Z": 156.20654 + }, + "StopDistance": 7, + "TerritoryId": 807, + "InteractionType": "CompleteQuest", + "NextQuestId": 3156 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Raid Quests/3156_In the End, There Is Omega.json b/QuestPaths/4.x - Stormblood/Raid Quests/3156_In the End, There Is Omega.json new file mode 100644 index 00000000..b37a3eee --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Raid Quests/3156_In the End, There Is Omega.json @@ -0,0 +1,143 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1026450, + "Position": { + "X": -35.01947, + "Y": -16.150002, + "Z": 156.20654 + }, + "StopDistance": 7, + "TerritoryId": 807, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1021937, + "Position": { + "X": 465.5984, + "Y": 69.25287, + "Z": 518.88293 + }, + "StopDistance": 7, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2009608, + "Position": { + "X": 103.07471, + "Y": 0.62561035, + "Z": 41.794434 + }, + "TerritoryId": 635, + "InteractionType": "Interact", + "AetheryteShortcut": "Rhalgr's Reach" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1026472, + "Position": { + "X": 116.50256, + "Y": 0.6520418, + "Z": 43.9917 + }, + "TerritoryId": 635, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1021947, + "Position": { + "X": 476.73767, + "Y": 69.83099, + "Z": 526.604 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "AetheryteShortcut": "Fringes - Peering Stones", + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_STMBDR303_03156_SYSTEM_000_006", + "Yes": true + } + ] + }, + { + "DataId": 1026456, + "Position": { + "X": -19.638367, + "Y": -16.65, + "Z": 144.06042 + }, + "TerritoryId": 812, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "TerritoryId": 812, + "InteractionType": "Duty", + "ContentFinderConditionId": 589 + } + ] + }, + { + "Sequence": 6 + }, + { + "Sequence": 7, + "Steps": [ + { + "TerritoryId": 812, + "InteractionType": "Duty", + "ContentFinderConditionId": 590 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1021937, + "Position": { + "X": 465.5984, + "Y": 69.25287, + "Z": 518.88293 + }, + "StopDistance": 7, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "NextQuestId": 3157 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Raid Quests/3157_To Kweh under Distant Skies.json b/QuestPaths/4.x - Stormblood/Raid Quests/3157_To Kweh under Distant Skies.json new file mode 100644 index 00000000..3f52f4bc --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Raid Quests/3157_To Kweh under Distant Skies.json @@ -0,0 +1,167 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1021939, + "Position": { + "X": 464.98804, + "Y": 69.34, + "Z": 522.4231 + }, + "StopDistance": 5, + "TerritoryId": 612, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1024746, + "Position": { + "X": 462.8518, + "Y": 69.31414, + "Z": 525.9021 + }, + "StopDistance": 6, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1023687, + "Position": { + "X": 112.7489, + "Y": 0.65204155, + "Z": 60.227295 + }, + "TerritoryId": 635, + "InteractionType": "Interact", + "AetheryteShortcut": "Rhalgr's Reach" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1026712, + "Position": { + "X": 113.23718, + "Y": 0.6520417, + "Z": 56.839844 + }, + "TerritoryId": 635, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_STMBDR304_03157_Q1_000_102", + "Answer": "TEXT_STMBDR304_03157_A1_000_103" + } + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1026465, + "Position": { + "X": -38.92578, + "Y": -0.0364509, + "Z": -3.7385254 + }, + "TerritoryId": 635, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1026466, + "Position": { + "X": -114.58002, + "Y": 0.5980477, + "Z": -33.829346 + }, + "TerritoryId": 635, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1026467, + "Position": { + "X": -150.4082, + "Y": -2.7350852, + "Z": -139.20807 + }, + "TerritoryId": 635, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1026467, + "Position": { + "X": -150.4082, + "Y": -2.7350852, + "Z": -139.20807 + }, + "TerritoryId": 635, + "InteractionType": "Emote", + "Emote": "pet" + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1026468, + "Position": { + "X": -13.778931, + "Y": 0.98160696, + "Z": 70.54236 + }, + "TerritoryId": 635, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1023687, + "Position": { + "X": 112.7489, + "Y": 0.65204155, + "Z": 60.227295 + }, + "TerritoryId": 635, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Quests/Kugane/2668_A Picture Is Worth a Thousand Moms.json b/QuestPaths/4.x - Stormblood/Side Quests/Kugane/2668_A Picture Is Worth a Thousand Moms.json new file mode 100644 index 00000000..e6debd99 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Quests/Kugane/2668_A Picture Is Worth a Thousand Moms.json @@ -0,0 +1,160 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1022958, + "Position": { + "X": 25.253662, + "Y": 7.9999995, + "Z": 159.47205 + }, + "TerritoryId": 628, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -59.62348, + "Y": 7.999999, + "Z": -59.427254 + }, + "TerritoryId": 628, + "InteractionType": "WalkTo", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ], + "AethernetShortcut": [ + "[Kugane] Thavnairian Consulate", + "[Kugane] Shiokaze Hostelry" + ], + "RestartNavigationIfCancelled": false + }, + { + "Position": { + "X": -74.28216, + "Y": 18, + "Z": -164.39622 + }, + "TerritoryId": 628, + "InteractionType": "Jump", + "AethernetShortcut": [ + "[Kugane] Shiokaze Hostelry", + "[Kugane] Bokairo Inn" + ], + "JumpDestination": { + "Position": { + "X": -67.259315, + "Y": 20.530502, + "Z": -163.86617 + }, + "StopDistance": 0.5, + "Type": "RepeatedJumps" + } + }, + { + "Position": { + "X": -37.85175, + "Y": 20.196363, + "Z": -163.43034 + }, + "TerritoryId": 628, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": -37.806847, + "Y": 21.332985, + "Z": -161.45049 + }, + "StopDistance": 1, + "TerritoryId": 628, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -31.778416, + "Y": 23.141376, + "Z": -159.92921 + } + } + }, + { + "Position": { + "X": -32.529102, + "Y": 23.164635, + "Z": -159.86409 + }, + "StopDistance": 0.5, + "TerritoryId": 628, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -28.255697, + "Y": 24.146992, + "Z": -159.81477 + } + } + }, + { + "Position": { + "X": -28.255697, + "Y": 24.146992, + "Z": -159.81477 + }, + "StopDistance": 0.5, + "TerritoryId": 628, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -24.809277, + "Y": 24.899979, + "Z": -159.88982 + }, + "StopDistance": 0.5 + }, + "RestartNavigationIfCancelled": false, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1022958, + "Position": { + "X": 25.253662, + "Y": 7.9999995, + "Z": 159.47205 + }, + "TerritoryId": 628, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] Thavnairian Consulate" + ] + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Quests/Kugane/2669_Zero Tolerance Teahouse.json b/QuestPaths/4.x - Stormblood/Side Quests/Kugane/2669_Zero Tolerance Teahouse.json new file mode 100644 index 00000000..1d54419a --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Quests/Kugane/2669_Zero Tolerance Teahouse.json @@ -0,0 +1,67 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1023304, + "Position": { + "X": 2.7008667, + "Y": 2.0507723E-06, + "Z": -52.84204 + }, + "TerritoryId": 628, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1023306, + "Position": { + "X": -80.338745, + "Y": -6.9700804, + "Z": -49.118835 + }, + "TerritoryId": 628, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1023305, + "Position": { + "X": 4.409851, + "Y": 2.100081E-06, + "Z": -52.903076 + }, + "TerritoryId": 628, + "InteractionType": "UseItem", + "ItemId": 2002339 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1023304, + "Position": { + "X": 2.7008667, + "Y": 2.0507723E-06, + "Z": -52.84204 + }, + "TerritoryId": 628, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Quests/Kugane/2813_Child Labor.json b/QuestPaths/4.x - Stormblood/Side Quests/Kugane/2813_Child Labor.json new file mode 100644 index 00000000..112b2757 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Quests/Kugane/2813_Child Labor.json @@ -0,0 +1,176 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1022620, + "Position": { + "X": -4.7455444, + "Y": 0.022830343, + "Z": -113.96973 + }, + "TerritoryId": 628, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1023127, + "Position": { + "X": -102.9527, + "Y": 11.80004, + "Z": -114.76312 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1023131, + "Position": { + "X": -88.304016, + "Y": -6.9999995, + "Z": -63.09613 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Kugane] Bokairo Inn", + "[Kugane] Shiokaze Hostelry" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 4 + ] + }, + { + "DataId": 1023126, + "Position": { + "X": 32.60852, + "Y": 2.9999993, + "Z": -49.881836 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Kugane] Shiokaze Hostelry", + "[Kugane] Aetheryte Plaza" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1023130, + "Position": { + "X": 80.460815, + "Y": 4.000001, + "Z": 71.488525 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] Kogane Dori Markets" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 8 + ] + }, + { + "DataId": 1023128, + "Position": { + "X": -34.103943, + "Y": 15.000004, + "Z": 68.86389 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1023129, + "Position": { + "X": 17.593567, + "Y": 11.44387, + "Z": 174.45642 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Kugane] Kogane Dori Markets", + "[Kugane] Thavnairian Consulate" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1022620, + "Position": { + "X": -4.7455444, + "Y": 0.022830343, + "Z": -113.96973 + }, + "TerritoryId": 628, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Kugane] Thavnairian Consulate", + "[Kugane] Rakuza District" + ], + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_STMBDZ710_02813_Q1_000_031", + "Answer": "TEXT_STMBDZ710_02813_A1_000_032" + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2662_Drawing a Blank.json b/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2662_Drawing a Blank.json new file mode 100644 index 00000000..c7250d96 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2662_Drawing a Blank.json @@ -0,0 +1,120 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1023754, + "Position": { + "X": -429.4652, + "Y": 75.3867, + "Z": -124.712036 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Fringes - Castrum Oriens", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "Fly": true + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2008756, + "Position": { + "X": -417.8073, + "Y": 76.8291, + "Z": -98.46649 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2008758, + "Position": { + "X": -411.88678, + "Y": 71.82422, + "Z": -85.46582 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 2008757, + "Position": { + "X": -423.6057, + "Y": 66.056274, + "Z": -33.463074 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2008759, + "Position": { + "X": -426.50494, + "Y": 75.028564, + "Z": -121.90442 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1019519, + "Position": { + "X": -613.1228, + "Y": 130, + "Z": -529.839 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Fringes - Castrum Oriens", + "NextQuestId": 2663 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2663_Seeking Answers.json b/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2663_Seeking Answers.json new file mode 100644 index 00000000..e47ddcf7 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2663_Seeking Answers.json @@ -0,0 +1,102 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1019519, + "Position": { + "X": -613.1228, + "Y": 130, + "Z": -529.839 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1023142, + "Position": { + "X": -642.9083, + "Y": 130.25946, + "Z": -538.29254 + }, + "StopDistance": 1, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1019519, + "Position": { + "X": -613.1228, + "Y": 130, + "Z": -529.839 + }, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1023153, + "Position": { + "X": -680.10986, + "Y": 120.11875, + "Z": -241.13837 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1023154, + "Position": { + "X": -736.56824, + "Y": 110.02372, + "Z": -176.13495 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1019519, + "Position": { + "X": -613.1228, + "Y": 130, + "Z": -529.839 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Fringes - Castrum Oriens", + "Fly": true, + "NextQuestId": 2664 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2664_The Honest Truth.json b/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2664_The Honest Truth.json new file mode 100644 index 00000000..e460abcc --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2664_The Honest Truth.json @@ -0,0 +1,161 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1019519, + "Position": { + "X": -613.1228, + "Y": 130, + "Z": -529.839 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1023144, + "Position": { + "X": -631.7998, + "Y": 130.39117, + "Z": -467.67383 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2008786, + "Position": { + "X": -630.45703, + "Y": 130.3883, + "Z": -466.75824 + }, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1023144, + "Position": { + "X": -631.7998, + "Y": 130.39117, + "Z": -467.67383 + }, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1023157, + "Position": { + "X": -427.26788, + "Y": 74.15582, + "Z": -103.56299 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "Position": { + "X": -397.5847, + "Y": 73.92399, + "Z": -104.41468 + }, + "TerritoryId": 612, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2008761, + "Position": { + "X": -398.30627, + "Y": 74.23511, + "Z": -106.70636 + }, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "Position": { + "X": -391.48306, + "Y": 73.52123, + "Z": -100.069016 + }, + "TerritoryId": 612, + "InteractionType": "WalkTo", + "Mount": true + }, + { + "Position": { + "X": -424.38403, + "Y": 62.880836, + "Z": -28.616083 + }, + "TerritoryId": 612, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1023158, + "Position": { + "X": -426.71857, + "Y": 63.23476, + "Z": -28.82434 + }, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1019519, + "Position": { + "X": -613.1228, + "Y": 130, + "Z": -529.839 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Fringes - Castrum Oriens", + "Fly": true, + "NextQuestId": 2824 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2824_A New Contender.json b/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2824_A New Contender.json new file mode 100644 index 00000000..195aae04 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2824_A New Contender.json @@ -0,0 +1,74 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1021565, + "Position": { + "X": 440.11584, + "Y": 114.254425, + "Z": 212.84802 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Fringes - Peering Stones" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1023160, + "Position": { + "X": 303.12048, + "Y": 46.087757, + "Z": 493.0647 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2008763, + "Position": { + "X": 465.7511, + "Y": 77.56152, + "Z": 118.08948 + }, + "TerritoryId": 612, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 7545 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1023161, + "Position": { + "X": 465.62903, + "Y": 77.67306, + "Z": 114.854614 + }, + "StopDistance": 7, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "NextQuestId": 2825 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2825_Down but Not Out.json b/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2825_Down but Not Out.json new file mode 100644 index 00000000..23f65ff6 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2825_Down but Not Out.json @@ -0,0 +1,55 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1023161, + "Position": { + "X": 465.62903, + "Y": 77.67306, + "Z": 114.854614 + }, + "StopDistance": 7, + "TerritoryId": 612, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1023162, + "Position": { + "X": 403.8911, + "Y": 114.18445, + "Z": 212.32922 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "AetheryteShortcut": "Fringes - Peering Stones" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1023163, + "Position": { + "X": 305.16516, + "Y": 45.654415, + "Z": 491.59985 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 2826 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2826_Make a Man Out of You.json b/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2826_Make a Man Out of You.json new file mode 100644 index 00000000..b330b5fa --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2826_Make a Man Out of You.json @@ -0,0 +1,120 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1023163, + "Position": { + "X": 305.16516, + "Y": 45.654415, + "Z": 491.59985 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1019531, + "Position": { + "X": -70.2984, + "Y": 56.0216, + "Z": 210.22351 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "TargetTerritoryId": 612, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "DataId": 1023164, + "Position": { + "X": -127.45862, + "Y": 41.197662, + "Z": 7.248047 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1023164, + "Position": { + "X": -127.45862, + "Y": 41.197662, + "Z": 7.248047 + }, + "TerritoryId": 612, + "InteractionType": "UseItem", + "ItemId": 2002274, + "GroundTarget": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1023164, + "Position": { + "X": -127.45862, + "Y": 41.197662, + "Z": 7.248047 + }, + "TerritoryId": 612, + "InteractionType": "UseItem", + "ItemId": 2002274, + "GroundTarget": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1023164, + "Position": { + "X": -127.45862, + "Y": 41.197662, + "Z": 7.248047 + }, + "TerritoryId": 612, + "InteractionType": "UseItem", + "ItemId": 2002274, + "GroundTarget": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1023164, + "Position": { + "X": -127.45862, + "Y": 41.197662, + "Z": 7.248047 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "NextQuestId": 2827 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2827_Honoring Family.json b/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2827_Honoring Family.json new file mode 100644 index 00000000..d21ee0bc --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2827_Honoring Family.json @@ -0,0 +1,86 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1023164, + "Position": { + "X": -127.45862, + "Y": 41.197662, + "Z": 7.248047 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1021565, + "Position": { + "X": 440.11584, + "Y": 114.254425, + "Z": 212.84802 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "AetheryteShortcut": "Fringes - Peering Stones" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2008764, + "Position": { + "X": 608.1482, + "Y": 48.02002, + "Z": 362.6306 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1023166, + "Position": { + "X": 607.3242, + "Y": 48.087296, + "Z": 364.79736 + }, + "StopDistance": 5, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1021565, + "Position": { + "X": 440.11584, + "Y": 114.254425, + "Z": 212.84802 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Fringes - Peering Stones", + "NextQuestId": 2828 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2828_The Rose Blooms Twice.json b/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2828_The Rose Blooms Twice.json new file mode 100644 index 00000000..8299dd45 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Quests/The Fringes/2828_The Rose Blooms Twice.json @@ -0,0 +1,105 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1021565, + "Position": { + "X": 440.11584, + "Y": 114.254425, + "Z": 212.84802 + }, + "TerritoryId": 612, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1019531, + "Position": { + "X": -70.2984, + "Y": 56.0216, + "Z": 210.22351 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "TargetTerritoryId": 612, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "Position": { + "X": -641.61725, + "Y": 78.03014, + "Z": 118.72834 + }, + "StopDistance": 0.5, + "TerritoryId": 612, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 7825, + 7826, + 7827 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1023409, + "Position": { + "X": -642.7558, + "Y": 77.98847, + "Z": 117.631714 + }, + "TerritoryId": 612, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2008893, + "Position": { + "X": -648.49316, + "Y": 48.41687, + "Z": 245.89917 + }, + "TerritoryId": 612, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1021565, + "Position": { + "X": 440.11584, + "Y": 114.254425, + "Z": 212.84802 + }, + "TerritoryId": 612, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Fringes - Peering Stones" + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Stories/Doman Reconstruction/3086_Precious Reclamation.json b/QuestPaths/4.x - Stormblood/Side Stories/Doman Reconstruction/3086_Precious Reclamation.json new file mode 100644 index 00000000..dc4d3638 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Stories/Doman Reconstruction/3086_Precious Reclamation.json @@ -0,0 +1,103 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024791, + "Position": { + "X": 31.60144, + "Y": 0.26575702, + "Z": 28.915894 + }, + "TerritoryId": 759, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Doman Enclave", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1006530, + "Position": { + "X": 21.927185, + "Y": 20.746975, + "Z": -682.06305 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "AetheryteShortcut": "Mor Dhona" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1025287, + "Position": { + "X": 64.34729, + "Y": 31.199963, + "Z": -754.0246 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 2009436, + "Position": { + "X": 70.05408, + "Y": 30.746826, + "Z": -722.86566 + }, + "TerritoryId": 156, + "InteractionType": "CompleteQuest", + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_STMBDY501_03086_Q1_000_091", + "Yes": true + }, + { + "Type": "List", + "Prompt": "TEXT_STMBDY501_03086_Q2_000_097", + "Answer": "TEXT_STMBDY501_03086_A2_000_100" + }, + { + "Type": "List", + "Prompt": "TEXT_STMBDY501_03086_Q3_000_118", + "Answer": "TEXT_STMBDY501_03086_A3_000_119" + }, + { + "Type": "List", + "Prompt": "TEXT_STMBDY501_03086_Q4_000_134", + "Answer": "TEXT_STMBDY501_03086_A4_000_136" + }, + { + "Type": "List", + "Prompt": "TEXT_STMBDY501_03086_Q5_000_156", + "Answer": "TEXT_STMBDY501_03086_A5_000_158" + } + ], + "NextQuestId": 3087 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Stories/Doman Reconstruction/3087_A Thousand and One Farewells.json b/QuestPaths/4.x - Stormblood/Side Stories/Doman Reconstruction/3087_A Thousand and One Farewells.json new file mode 100644 index 00000000..0c5847ac --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Stories/Doman Reconstruction/3087_A Thousand and One Farewells.json @@ -0,0 +1,118 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1025330, + "Position": { + "X": 64.83557, + "Y": 30.6188, + "Z": -722.3774 + }, + "StopDistance": 7, + "TerritoryId": 156, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1006530, + "Position": { + "X": 21.927185, + "Y": 20.746975, + "Z": -682.06305 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1009813, + "Position": { + "X": 55.436035, + "Y": 31.187548, + "Z": -763.42413 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 51.799374, + "Y": 50, + "Z": -774.0067 + }, + "TerritoryId": 156, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1018433, + "Position": { + "X": 50.766724, + "Y": 50, + "Z": -772.3964 + }, + "TerritoryId": 156, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1025287, + "Position": { + "X": 64.34729, + "Y": 31.199963, + "Z": -754.0246 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1024791, + "Position": { + "X": 31.60144, + "Y": 0.26575702, + "Z": 28.915894 + }, + "TerritoryId": 759, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Doman Enclave", + "NextQuestId": 3141 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Stories/Doman Reconstruction/3141_It Takes an Enclave.json b/QuestPaths/4.x - Stormblood/Side Stories/Doman Reconstruction/3141_It Takes an Enclave.json new file mode 100644 index 00000000..2eb8da81 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Stories/Doman Reconstruction/3141_It Takes an Enclave.json @@ -0,0 +1,57 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024791, + "Position": { + "X": 31.60144, + "Y": 0.26575702, + "Z": 28.915894 + }, + "TerritoryId": 759, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Doman Enclave", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1024793, + "Position": { + "X": 66.666626, + "Y": -7.579447E-09, + "Z": -59.67804 + }, + "TerritoryId": 759, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1024791, + "Position": { + "X": 31.60144, + "Y": 0.26575702, + "Z": 28.915894 + }, + "TerritoryId": 759, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3008_A Hingan Tale - Nashu Goes East.json b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3008_A Hingan Tale - Nashu Goes East.json new file mode 100644 index 00000000..8715a007 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3008_A Hingan Tale - Nashu Goes East.json @@ -0,0 +1,197 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024349, + "Position": { + "X": -27.054321, + "Y": -1.3048761E-05, + "Z": -69.596436 + }, + "TerritoryId": 628, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Kugane", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1024350, + "Position": { + "X": -36.02661, + "Y": 14.001708, + "Z": -45.39563 + }, + "TerritoryId": 628, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1024350, + "Position": { + "X": -36.02661, + "Y": 14.001708, + "Z": -45.39563 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CHRHDB711_03008_Q1_000_000", + "Answer": "TEXT_CHRHDB711_03008_A1_000_002" + } + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1019000, + "Position": { + "X": 39.414062, + "Y": 4.49998, + "Z": -43.47296 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "Position": { + "X": -93.72425, + "Y": 11.799999, + "Z": -147.28041 + }, + "TerritoryId": 628, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + } + }, + { + "DataId": 1019034, + "Position": { + "X": -95.84198, + "Y": 11.8, + "Z": -147.29541 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1024409, + "Position": { + "X": -20.920166, + "Y": 6.019962, + "Z": -133.31812 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1024351, + "Position": { + "X": -36.270752, + "Y": 5.9819617, + "Z": -152.36133 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CHRHDB711_03008_Q2_000_000", + "Answer": "TEXT_CHRHDB711_03008_A2_000_001" + } + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1024352, + "Position": { + "X": 24.093994, + "Y": 6.025086, + "Z": -134.02002 + }, + "TerritoryId": 628, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1024355, + "Position": { + "X": 25.375732, + "Y": 6.0313134, + "Z": -119.432434 + }, + "TerritoryId": 628, + "InteractionType": "CompleteQuest", + "NextQuestId": 3020 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3020_Life Imitates Art Imitates Life.json b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3020_Life Imitates Art Imitates Life.json new file mode 100644 index 00000000..15ab40c0 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3020_Life Imitates Art Imitates Life.json @@ -0,0 +1,167 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024355, + "Position": { + "X": 25.375732, + "Y": 6.0313134, + "Z": -119.432434 + }, + "TerritoryId": 628, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Kugane", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CHRHDB721_03020_Q1_000_004", + "Answer": "TEXT_CHRHDB721_03020_A1_000_005" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1024711, + "Position": { + "X": 136.21729, + "Y": 12.000006, + "Z": -69.87109 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Kugane] Rakuza District", + "[Kugane] Sekiseigumi Barracks" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1019063, + "Position": { + "X": 3.3416748, + "Y": -6.6541724E-11, + "Z": -67.73486 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Kugane] Sekiseigumi Barracks", + "[Kugane] Aetheryte Plaza" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1019039, + "Position": { + "X": -35.111023, + "Y": 13.999897, + "Z": -64.042114 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1024705, + "Position": { + "X": 8.590759, + "Y": 4, + "Z": 35.171997 + }, + "TerritoryId": 628, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1024708, + "Position": { + "X": 98.83264, + "Y": 4.0000014, + "Z": 103.471436 + }, + "TerritoryId": 628, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1024709, + "Position": { + "X": -108.01868, + "Y": -5.999997, + "Z": 70.23718 + }, + "TerritoryId": 628, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1024710, + "Position": { + "X": 835.5382, + "Y": 5.9230075, + "Z": 834.6837 + }, + "TerritoryId": 613, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] The Ruby Price" + ], + "NextQuestId": 3021 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3021_Of Wolves and Gentlemen.json b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3021_Of Wolves and Gentlemen.json new file mode 100644 index 00000000..1f90ec68 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3021_Of Wolves and Gentlemen.json @@ -0,0 +1,136 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024710, + "Position": { + "X": 835.5382, + "Y": 5.9230075, + "Z": 834.6837 + }, + "TerritoryId": 613, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1019166, + "Position": { + "X": 495.6587, + "Y": 29.394592, + "Z": 722.0111 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1024717, + "Position": { + "X": 503.44092, + "Y": 28.738373, + "Z": 737.4226 + }, + "TerritoryId": 613, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2008628, + "Position": { + "X": 633.81384, + "Y": 1.4800415, + "Z": 216.26611 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1024722, + "Position": { + "X": 615.4115, + "Y": 69.10424, + "Z": -79.88104 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1024723, + "Position": { + "X": 534.2031, + "Y": 0.004061999, + "Z": -252.58258 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1024725, + "Position": { + "X": 100.02283, + "Y": 4.0000014, + "Z": 99.25989 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] Kogane Dori Markets" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1024708, + "Position": { + "X": 98.83264, + "Y": 4.0000014, + "Z": 103.471436 + }, + "TerritoryId": 628, + "InteractionType": "CompleteQuest", + "NextQuestId": 3094 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3094_In the Eye of the Hingan.json b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3094_In the Eye of the Hingan.json new file mode 100644 index 00000000..cbbdeeeb --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3094_In the Eye of the Hingan.json @@ -0,0 +1,101 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024708, + "Position": { + "X": 98.83264, + "Y": 4.0000014, + "Z": 103.471436 + }, + "TerritoryId": 628, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1025885, + "Position": { + "X": 26.443848, + "Y": 6.024561, + "Z": -118.57788 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Kugane] Kogane Dori Markets", + "[Kugane] Rakuza District" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1025887, + "Position": { + "X": -62.790894, + "Y": 6.0295854, + "Z": -171.19104 + }, + "TerritoryId": 628, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1025891, + "Position": { + "X": -45.059937, + "Y": 10.503964, + "Z": -191.79071 + }, + "TerritoryId": 628, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1025887, + "Position": { + "X": -62.790894, + "Y": 6.0295854, + "Z": -171.19104 + }, + "TerritoryId": 628, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1025893, + "Position": { + "X": -60.41046, + "Y": 6.0110765, + "Z": -168.41382 + }, + "TerritoryId": 628, + "InteractionType": "CompleteQuest", + "NextQuestId": 3095 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3095_The Blade Mislaid.json b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3095_The Blade Mislaid.json new file mode 100644 index 00000000..c493b8f0 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3095_The Blade Mislaid.json @@ -0,0 +1,151 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1025893, + "Position": { + "X": -60.41046, + "Y": 6.0110765, + "Z": -168.41382 + }, + "TerritoryId": 628, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1025896, + "Position": { + "X": 248.09644, + "Y": 17.471375, + "Z": -664.9729 + }, + "TerritoryId": 614, + "InteractionType": "Interact", + "AetheryteShortcut": "Yanxia - House of the Fierce", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1025901, + "Position": { + "X": -93.70575, + "Y": 53.144028, + "Z": -530.2663 + }, + "TerritoryId": 614, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1025906, + "Position": { + "X": -208.8808, + "Y": 53.217514, + "Z": -581.3535 + }, + "TerritoryId": 614, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2009533, + "Position": { + "X": -220.11145, + "Y": 53.20813, + "Z": -597.80273 + }, + "TerritoryId": 614, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1025910, + "Position": { + "X": -125.41394, + "Y": 53.217514, + "Z": -648.4321 + }, + "TerritoryId": 614, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1025911, + "Position": { + "X": -126.237915, + "Y": 53.217514, + "Z": -650.6905 + }, + "StopDistance": 5, + "TerritoryId": 614, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1019030, + "Position": { + "X": 65.72058, + "Y": 10.503965, + "Z": -167.1626 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AetheryteShortcut": "Kugane" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1025912, + "Position": { + "X": 66.57507, + "Y": 10.503965, + "Z": -155.59625 + }, + "StopDistance": 5, + "TerritoryId": 628, + "InteractionType": "CompleteQuest", + "NextQuestId": 3150 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3150_The Black Heart Beneath.json b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3150_The Black Heart Beneath.json new file mode 100644 index 00000000..70c91fb6 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3150_The Black Heart Beneath.json @@ -0,0 +1,162 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1025912, + "Position": { + "X": 66.57507, + "Y": 10.503965, + "Z": -155.59625 + }, + "StopDistance": 5, + "TerritoryId": 628, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1022620, + "Position": { + "X": -4.7455444, + "Y": 0.022830343, + "Z": -113.96973 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1019063, + "Position": { + "X": 3.3416748, + "Y": -6.6541724E-11, + "Z": -67.73486 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1022628, + "Position": { + "X": 38.651123, + "Y": 2.99999, + "Z": -66.7583 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1025912, + "Position": { + "X": 66.57507, + "Y": 10.503965, + "Z": -155.59625 + }, + "TerritoryId": 628, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1026349, + "Position": { + "X": 62.18042, + "Y": 5.991543, + "Z": -106.126526 + }, + "StopDistance": 5, + "TerritoryId": 628, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 65.39469, + "Y": 5.8110533, + "Z": -121.784775 + }, + "TerritoryId": 628, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": 72.780495, + "Y": -8.000002, + "Z": -127.28816 + }, + "TerritoryId": 628, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, + { + "DataId": 1026457, + "Position": { + "X": 62.271973, + "Y": -8.0999975, + "Z": -225.2995 + }, + "TerritoryId": 628, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1026353, + "Position": { + "X": 45.456543, + "Y": -7.470526, + "Z": -261.34125 + }, + "TerritoryId": 628, + "InteractionType": "CompleteQuest", + "NextQuestId": 3151 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3151_Good Swords, Good Dogs.json b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3151_Good Swords, Good Dogs.json new file mode 100644 index 00000000..50a08d2b --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3151_Good Swords, Good Dogs.json @@ -0,0 +1,111 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1026351, + "Position": { + "X": 45.090332, + "Y": -7.469796, + "Z": -262.7146 + }, + "StopDistance": 5, + "TerritoryId": 628, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1026355, + "Position": { + "X": 841.27563, + "Y": 1.1792023, + "Z": 861.90576 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] The Ruby Price" + ], + "Mount": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1019166, + "Position": { + "X": 495.6587, + "Y": 29.394592, + "Z": 722.0111 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1026366, + "Position": { + "X": 433.73767, + "Y": 30.29471, + "Z": 780.69727 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1026367, + "Position": { + "X": 297.32202, + "Y": 0.35283074, + "Z": 470.51184 + }, + "TerritoryId": 613, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1026369, + "Position": { + "X": -35.080566, + "Y": 5.983372, + "Z": -152.23932 + }, + "TerritoryId": 628, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] Rakuza District" + ], + "NextQuestId": 3167 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3167_The Past Is Never Past.json b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3167_The Past Is Never Past.json new file mode 100644 index 00000000..a2a606f8 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3167_The Past Is Never Past.json @@ -0,0 +1,179 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024351, + "Position": { + "X": -36.270752, + "Y": 5.9819617, + "Z": -152.36133 + }, + "StopDistance": 5, + "TerritoryId": 628, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1026363, + "Position": { + "X": 54.61206, + "Y": 7.999999, + "Z": 192.401 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Kugane] Rakuza District", + "[Kugane] Thavnairian Consulate" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 628, + "InteractionType": "Duty", + "ContentFinderConditionId": 595 + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1026364, + "Position": { + "X": 52.536743, + "Y": 8.02, + "Z": 192.49243 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AetheryteShortcut": "Kugane", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1024351, + "Position": { + "X": -36.270752, + "Y": 5.9819617, + "Z": -152.36133 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Kugane] Thavnairian Consulate", + "[Kugane] Rakuza District" + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1019063, + "Position": { + "X": 3.3416748, + "Y": -6.6541724E-11, + "Z": -67.73486 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1018994, + "Position": { + "X": 49.240845, + "Y": 4.0000005, + "Z": 55.77173 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] Kogane Dori Markets" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1026369, + "Position": { + "X": -35.080566, + "Y": 5.983372, + "Z": -152.23932 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Kugane] Kogane Dori Markets", + "[Kugane] Rakuza District" + ], + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CHRHDB751_03167_Q1_000_000", + "Answer": "TEXT_CHRHDB751_03167_A1_000_002" + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1025885, + "Position": { + "X": 26.443848, + "Y": 6.024561, + "Z": -118.57788 + }, + "StopDistance": 5, + "TerritoryId": 628, + "InteractionType": "CompleteQuest", + "NextQuestId": 3168 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3168_Don't Do the Dewprism.json b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3168_Don't Do the Dewprism.json new file mode 100644 index 00000000..fdb72ac4 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Side Stories/Hildibrand/3168_Don't Do the Dewprism.json @@ -0,0 +1,164 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1025885, + "Position": { + "X": 26.443848, + "Y": 6.024561, + "Z": -118.57788 + }, + "StopDistance": 5, + "TerritoryId": 628, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 65.39469, + "Y": 5.8110533, + "Z": -121.784775 + }, + "TerritoryId": 628, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": 72.780495, + "Y": -8.000002, + "Z": -127.28816 + }, + "TerritoryId": 628, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, + { + "DataId": 1019068, + "Position": { + "X": 42.191162, + "Y": -7.463482, + "Z": -264.75934 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CHRHDB752_03168_Q1_000_000", + "Answer": "TEXT_CHRHDB752_03168_A1_000_001" + } + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1019033, + "Position": { + "X": 52.048462, + "Y": 8.02, + "Z": 140.55078 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] Thavnairian Consulate" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 16.635633, + "Y": 11.441568, + "Z": 174.71848 + }, + "TerritoryId": 628, + "InteractionType": "WalkTo" + }, + { + "DataId": 1026764, + "Position": { + "X": 24.917969, + "Y": 6.0124164, + "Z": -123.979614 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Kugane] Thavnairian Consulate", + "[Kugane] Rakuza District" + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1026350, + "Position": { + "X": 512.90137, + "Y": 0.8484344, + "Z": 148.91272 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Kugane] Rakuza District", + "[Kugane] The Ruby Price" + ], + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1026765, + "Position": { + "X": 495.10938, + "Y": 1.611506, + "Z": 149.49255 + }, + "StopDistance": 5, + "TerritoryId": 613, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1026766, + "Position": { + "X": 52.384155, + "Y": 10.503965, + "Z": -154.03986 + }, + "TerritoryId": 628, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Kugane", + "NextQuestId": 4542 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Trial Quests/3015_An Auspicious Encounter.json b/QuestPaths/4.x - Stormblood/Trial Quests/3015_An Auspicious Encounter.json new file mode 100644 index 00000000..160d9244 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Trial Quests/3015_An Auspicious Encounter.json @@ -0,0 +1,256 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1024836, + "Position": { + "X": -788.2658, + "Y": 11.709066, + "Z": -283.0091 + }, + "TerritoryId": 613, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ruby Sea - Onokoro", + "Fly": true + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1024622, + "Position": { + "X": 102.433716, + "Y": 0.2814351, + "Z": -550.9575 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "TargetTerritoryId": 613, + "AetheryteShortcut": "Ruby Sea - Onokoro", + "Fly": true + }, + { + "DataId": 2009398, + "Position": { + "X": 279.4994, + "Y": 16.55597, + "Z": 844.541 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 613, + "InteractionType": "Duty", + "ContentFinderConditionId": 284 + } + ] + }, + { + "Sequence": 3 + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1025142, + "Position": { + "X": 51.5907, + "Y": -90.000015, + "Z": -492.51547 + }, + "TerritoryId": 764, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1025141, + "Position": { + "X": 55.161255, + "Y": -89.90002, + "Z": -459.0982 + }, + "TerritoryId": 764, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1025143, + "Position": { + "X": 97.67297, + "Y": -89.90002, + "Z": -480.36932 + }, + "TerritoryId": 764, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1025138, + "Position": { + "X": 61.997314, + "Y": -90.00002, + "Z": -478.14148 + }, + "TerritoryId": 764, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1025144, + "Position": { + "X": 8.804443, + "Y": -90, + "Z": -470.63403 + }, + "TerritoryId": 764, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1025148, + "Position": { + "X": 509.17822, + "Y": 23.72771, + "Z": -764.0345 + }, + "TerritoryId": 614, + "InteractionType": "Interact", + "AetheryteShortcut": "Yanxia - House of the Fierce", + "Fly": true + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "TerritoryId": 614, + "InteractionType": "Duty", + "ContentFinderConditionId": 290 + } + ] + }, + { + "Sequence": 9, + "Steps": [ + { + "DataId": 1025469, + "Position": { + "X": 505.5161, + "Y": 23.265062, + "Z": -768.6732 + }, + "TerritoryId": 614, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 10, + "Steps": [ + { + "DataId": 1025137, + "Position": { + "X": 281.66626, + "Y": 16.350018, + "Z": 846.89087 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] The Ruby Price" + ], + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_STMBDY301_03015_Q7_000_000", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 11, + "Steps": [ + { + "DataId": 1025168, + "Position": { + "X": 75.638916, + "Y": -89.90002, + "Z": -503.95975 + }, + "TerritoryId": 764, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1019178, + "Position": { + "X": 319.69165, + "Y": -120.03494, + "Z": -250.90417 + }, + "TerritoryId": 613, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ruby Sea - Tamamizu", + "NextQuestId": 3016 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Trial Quests/3016_Tortoise in Time.json b/QuestPaths/4.x - Stormblood/Trial Quests/3016_Tortoise in Time.json new file mode 100644 index 00000000..0a159ba5 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Trial Quests/3016_Tortoise in Time.json @@ -0,0 +1,166 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1019178, + "Position": { + "X": 319.69165, + "Y": -120.03494, + "Z": -250.90417 + }, + "TerritoryId": 613, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1025137, + "Position": { + "X": 281.66626, + "Y": 16.350018, + "Z": 846.89087 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] The Ruby Price" + ], + "Fly": true, + "TargetTerritoryId": 764 + }, + { + "DataId": 1025559, + "Position": { + "X": 61.753174, + "Y": -90.00002, + "Z": -478.11096 + }, + "TerritoryId": 764, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1025563, + "Position": { + "X": -485.19116, + "Y": 68.82959, + "Z": 273.2738 + }, + "TerritoryId": 614, + "InteractionType": "Interact", + "AetheryteShortcut": "Doman Enclave", + "AethernetShortcut": [ + "[Doman Enclave] Aetheryte Plaza", + "[Doman Enclave] The One River" + ], + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 614, + "InteractionType": "Duty", + "ContentFinderConditionId": 536 + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1025137, + "Position": { + "X": 281.66626, + "Y": 16.350018, + "Z": 846.89087 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] The Ruby Price" + ], + "Fly": true, + "TargetTerritoryId": 764 + }, + { + "DataId": 1025138, + "Position": { + "X": 61.997314, + "Y": -90.00002, + "Z": -478.14148 + }, + "TerritoryId": 764, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1025138, + "Position": { + "X": 61.997314, + "Y": -90.00002, + "Z": -478.14148 + }, + "TerritoryId": 764, + "InteractionType": "SinglePlayerDuty" + } + ] + }, + { + "Sequence": 6 + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1025138, + "Position": { + "X": 61.997314, + "Y": -90.00002, + "Z": -478.14148 + }, + "TerritoryId": 764, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1019178, + "Position": { + "X": 319.69165, + "Y": -120.03494, + "Z": -250.90417 + }, + "TerritoryId": 613, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ruby Sea - Tamamizu", + "NextQuestId": 3152 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Trial Quests/3152_The Fire-bird Down Below.json b/QuestPaths/4.x - Stormblood/Trial Quests/3152_The Fire-bird Down Below.json new file mode 100644 index 00000000..a623aa64 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Trial Quests/3152_The Fire-bird Down Below.json @@ -0,0 +1,113 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1019178, + "Position": { + "X": 319.69165, + "Y": -120.03494, + "Z": -250.90417 + }, + "TerritoryId": 613, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1025137, + "Position": { + "X": 281.66626, + "Y": 16.350018, + "Z": 846.89087 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] The Ruby Price" + ], + "Fly": true, + "TargetTerritoryId": 764 + }, + { + "DataId": 1026480, + "Position": { + "X": 61.997314, + "Y": -90.00002, + "Z": -478.14148 + }, + "TerritoryId": 764, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1026204, + "Position": { + "X": 74.23511, + "Y": -90.00003, + "Z": -457.3587 + }, + "TerritoryId": 764, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 764, + "InteractionType": "Duty", + "ContentFinderConditionId": 596 + } + ] + }, + { + "Sequence": 4 + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1026480, + "Position": { + "X": 61.997314, + "Y": -90.00002, + "Z": -478.14148 + }, + "TerritoryId": 764, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1019178, + "Position": { + "X": 319.69165, + "Y": -120.03494, + "Z": -250.90417 + }, + "TerritoryId": 613, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ruby Sea - Tamamizu", + "NextQuestId": 3165 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Trial Quests/3165_Surpassing the Samurai.json b/QuestPaths/4.x - Stormblood/Trial Quests/3165_Surpassing the Samurai.json new file mode 100644 index 00000000..93ae9a87 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Trial Quests/3165_Surpassing the Samurai.json @@ -0,0 +1,97 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1019178, + "Position": { + "X": 319.69165, + "Y": -120.03494, + "Z": -250.90417 + }, + "TerritoryId": 613, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1025137, + "Position": { + "X": 281.66626, + "Y": 16.350018, + "Z": 846.89087 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] The Ruby Price" + ], + "Fly": true, + "TargetTerritoryId": 764 + }, + { + "DataId": 1026480, + "Position": { + "X": 61.997314, + "Y": -90.00002, + "Z": -478.14148 + }, + "TerritoryId": 764, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1026581, + "Position": { + "X": 798.4894, + "Y": -0.079232015, + "Z": -300.67908 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "AetheryteShortcut": "Ruby Sea - Tamamizu", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 613, + "InteractionType": "Duty", + "ContentFinderConditionId": 637 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1026581, + "Position": { + "X": 798.4894, + "Y": -0.079232015, + "Z": -300.67908 + }, + "StopDistance": 6, + "TerritoryId": 613, + "InteractionType": "CompleteQuest", + "NextQuestId": 3166 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Trial Quests/3166_The Fifth Lord.json b/QuestPaths/4.x - Stormblood/Trial Quests/3166_The Fifth Lord.json new file mode 100644 index 00000000..166cf97d --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Trial Quests/3166_The Fifth Lord.json @@ -0,0 +1,167 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1026581, + "Position": { + "X": 798.4894, + "Y": -0.079232015, + "Z": -300.67908 + }, + "StopDistance": 6, + "TerritoryId": 613, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1025137, + "Position": { + "X": 281.66626, + "Y": 16.350018, + "Z": 846.89087 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] The Ruby Price" + ], + "Fly": true, + "TargetTerritoryId": 764 + }, + { + "DataId": 1026480, + "Position": { + "X": 61.997314, + "Y": -90.00002, + "Z": -478.14148 + }, + "TerritoryId": 764, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1026480, + "Position": { + "X": 61.997314, + "Y": -90.00002, + "Z": -478.14148 + }, + "TerritoryId": 764, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1028803, + "Position": { + "X": 8.804443, + "Y": -90, + "Z": -470.63403 + }, + "TerritoryId": 764, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1028804, + "Position": { + "X": 74.23511, + "Y": -90.00003, + "Z": -457.3587 + }, + "TerritoryId": 764, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_STMBDY332_03166_Q2_000_000", + "Answer": "TEXT_STMBDY332_03166_A2_000_001" + } + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1028805, + "Position": { + "X": 115.83118, + "Y": -90, + "Z": -470.81714 + }, + "TerritoryId": 764, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1028806, + "Position": { + "X": 61.997314, + "Y": -90.00002, + "Z": -478.14148 + }, + "TerritoryId": 764, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1019178, + "Position": { + "X": 319.69165, + "Y": -120.03494, + "Z": -250.90417 + }, + "TerritoryId": 613, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ruby Sea - Tamamizu", + "NextQuestId": 3165 + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Unlocks/Instant/2941_Reach Long and Prosper.json b/QuestPaths/4.x - Stormblood/Unlocks/Instant/2941_Reach Long and Prosper.json new file mode 100644 index 00000000..c2e24fac --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Unlocks/Instant/2941_Reach Long and Prosper.json @@ -0,0 +1,36 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": -69.61145, + "Y": 0.00999999, + "Z": 62.405437 + }, + "TerritoryId": 635, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Rhalgr's Reach", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "DataId": 1019459, + "Position": { + "X": -70.54254, + "Y": 0.4599931, + "Z": 64.37781 + }, + "TerritoryId": 635, + "InteractionType": "AcceptQuest" + } + ] + } + ] +} diff --git a/QuestPaths/4.x - Stormblood/Unlocks/Misc/3078_And We Shall Call It Eureka.json b/QuestPaths/4.x - Stormblood/Unlocks/Misc/3078_And We Shall Call It Eureka.json new file mode 100644 index 00000000..0f0183d4 --- /dev/null +++ b/QuestPaths/4.x - Stormblood/Unlocks/Misc/3078_And We Shall Call It Eureka.json @@ -0,0 +1,71 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": -69.61145, + "Y": 0.00999999, + "Z": 62.405437 + }, + "TerritoryId": 635, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Rhalgr's Reach", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "DataId": 1019459, + "Position": { + "X": -70.54254, + "Y": 0.4599931, + "Z": 64.37781 + }, + "TerritoryId": 635, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1019002, + "Position": { + "X": -48.05072, + "Y": -2.9, + "Z": -50.247986 + }, + "TerritoryId": 628, + "InteractionType": "Interact", + "AetheryteShortcut": "Kugane" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1025233, + "Position": { + "X": -129.19812, + "Y": -4.999999, + "Z": 145.37268 + }, + "TerritoryId": 628, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] Pier #1" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Aether Currents/Amh Araeng/3511_Charmless Man.json b/QuestPaths/5.x - Shadowbringers/Aether Currents/Amh Araeng/3511_Charmless Man.json index 3de20e02..52dbdbfe 100644 --- a/QuestPaths/5.x - Shadowbringers/Aether Currents/Amh Araeng/3511_Charmless Man.json +++ b/QuestPaths/5.x - Shadowbringers/Aether Currents/Amh Araeng/3511_Charmless Man.json @@ -35,6 +35,17 @@ { "Sequence": 255, "Steps": [ + { + "DataId": 1030979, + "Position": { + "X": -424.61285, + "Y": 31.900826, + "Z": -226.64227 + }, + "TerritoryId": 815, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3503 + }, { "DataId": 1030807, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/Aether Currents/Il Mheg/3398_Delightful Decorations.json b/QuestPaths/5.x - Shadowbringers/Aether Currents/Il Mheg/3398_Delightful Decorations.json index cef64c1d..0011e9c6 100644 --- a/QuestPaths/5.x - Shadowbringers/Aether Currents/Il Mheg/3398_Delightful Decorations.json +++ b/QuestPaths/5.x - Shadowbringers/Aether Currents/Il Mheg/3398_Delightful Decorations.json @@ -27,8 +27,7 @@ "Z": -194.937 }, "TerritoryId": 816, - "InteractionType": "Dive", - "Comment": "TODO: Verify diving works here" + "InteractionType": "Dive" }, { "DataId": 2010160, @@ -116,7 +115,8 @@ }, "TerritoryId": 816, "InteractionType": "WalkTo", - "DisableNavmesh": true + "DisableNavmesh": true, + "Mount": true }, { "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/Aether Currents/Il Mheg/3404_The Path to Popularity.json b/QuestPaths/5.x - Shadowbringers/Aether Currents/Il Mheg/3404_The Path to Popularity.json index 85586a61..e005cb36 100644 --- a/QuestPaths/5.x - Shadowbringers/Aether Currents/Il Mheg/3404_The Path to Popularity.json +++ b/QuestPaths/5.x - Shadowbringers/Aether Currents/Il Mheg/3404_The Path to Popularity.json @@ -91,6 +91,22 @@ } ] }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1030838, + "Position": { + "X": -285.90833, + "Y": 40.324036, + "Z": 444.41882 + }, + "TerritoryId": 816, + "InteractionType": "Interact", + "AetheryteShortcut": "Il Mheg - Lydha Lran" + } + ] + }, { "Sequence": 255, "Steps": [ diff --git a/QuestPaths/5.x - Shadowbringers/Aether Currents/Kholusia/3360_A Plankless Task.json b/QuestPaths/5.x - Shadowbringers/Aether Currents/Kholusia/3360_A Plankless Task.json index 61829403..cf48cb7b 100644 --- a/QuestPaths/5.x - Shadowbringers/Aether Currents/Kholusia/3360_A Plankless Task.json +++ b/QuestPaths/5.x - Shadowbringers/Aether Currents/Kholusia/3360_A Plankless Task.json @@ -80,7 +80,8 @@ null, null, 128 - ] + ], + "DelaySecondsAtStart": 1 }, { "DataId": 2010286, @@ -99,7 +100,8 @@ null, null, 32 - ] + ], + "DelaySecondsAtStart": 1 }, { "DataId": 2010287, @@ -118,7 +120,8 @@ null, null, 16 - ] + ], + "DelaySecondsAtStart": 1 }, { "DataId": 2010288, @@ -137,7 +140,8 @@ null, null, 8 - ] + ], + "DelaySecondsAtStart": 1 }, { "DataId": 2010261, @@ -156,7 +160,8 @@ null, null, 64 - ] + ], + "DelaySecondsAtStart": 1 }, { "DataId": 2010289, @@ -175,7 +180,8 @@ null, null, 4 - ] + ], + "DelaySecondsAtStart": 1 } ] }, diff --git a/QuestPaths/5.x - Shadowbringers/Aether Currents/Kholusia/3537_Fugitive of Fear.json b/QuestPaths/5.x - Shadowbringers/Aether Currents/Kholusia/3537_Fugitive of Fear.json index ca916173..fffd4d93 100644 --- a/QuestPaths/5.x - Shadowbringers/Aether Currents/Kholusia/3537_Fugitive of Fear.json +++ b/QuestPaths/5.x - Shadowbringers/Aether Currents/Kholusia/3537_Fugitive of Fear.json @@ -42,7 +42,8 @@ "Z": -15.381194 }, "TerritoryId": 814, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "Mount": true }, { "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/Aether Currents/Lakeland/3386_An Unreasonable Request.json b/QuestPaths/5.x - Shadowbringers/Aether Currents/Lakeland/3386_An Unreasonable Request.json index 7a5640ea..64f15cc9 100644 --- a/QuestPaths/5.x - Shadowbringers/Aether Currents/Lakeland/3386_An Unreasonable Request.json +++ b/QuestPaths/5.x - Shadowbringers/Aether Currents/Lakeland/3386_An Unreasonable Request.json @@ -40,6 +40,7 @@ }, "TerritoryId": 813, "InteractionType": "Interact", + "Mount": true, "DialogueChoices": [ { "Type": "List", @@ -53,6 +54,26 @@ { "Sequence": 2, "Steps": [ + { + "Position": { + "X": -159.60991, + "Y": 28.47209, + "Z": -130.60031 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "Mount": true + }, + { + "Position": { + "X": -159.76884, + "Y": 32.30582, + "Z": -122.91172 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, { "DataId": 1028317, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/Aether Currents/Tempest/3594_Community Cohesion.json b/QuestPaths/5.x - Shadowbringers/Aether Currents/Tempest/3594_Community Cohesion.json index dc8bdeaa..93e5ec84 100644 --- a/QuestPaths/5.x - Shadowbringers/Aether Currents/Tempest/3594_Community Cohesion.json +++ b/QuestPaths/5.x - Shadowbringers/Aether Currents/Tempest/3594_Community Cohesion.json @@ -35,6 +35,15 @@ { "Sequence": 2, "Steps": [ + { + "Position": { + "X": -450.6779, + "Y": -250.89601, + "Z": 400.94394 + }, + "TerritoryId": 818, + "InteractionType": "WalkTo" + }, { "Position": { "X": -361.26102, diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3671_Word about Komra.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3671_Word about Komra.json new file mode 100644 index 00000000..89d9d74e --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3671_Word about Komra.json @@ -0,0 +1,187 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1031577, + "Position": { + "X": -425.58942, + "Y": 417.21378, + "Z": -636.7438 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Kholusia - Tomra", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1031578, + "Position": { + "X": 737.48376, + "Y": 285.0224, + "Z": -84.97754 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "AetheryteShortcut": "Kholusia - Stilltide", + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_LUCKYA003_03671_Q1_000_000", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1031579, + "Position": { + "X": 735.89685, + "Y": 285.08194, + "Z": -82.35297 + }, + "StopDistance": 5, + "TerritoryId": 814, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKYA003_03671_Q2_000_000", + "Answer": "TEXT_LUCKYA003_03671_A2_000_001" + } + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1031580, + "Position": { + "X": 665.21704, + "Y": 297.47797, + "Z": -159.77728 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2010753, + "Position": { + "X": 631.9523, + "Y": 325.82593, + "Z": -228.68695 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1031580, + "Position": { + "X": 665.21704, + "Y": 297.47797, + "Z": -159.77728 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKYA003_03671_Q5_000_000", + "Answer": "TEXT_LUCKYA003_03671_A5_000_002" + } + ] + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "Position": { + "X": 544.0766, + "Y": 295.72742, + "Z": -218.72057 + }, + "TerritoryId": 814, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2010754, + "Position": { + "X": 542.9313, + "Y": 296.19275, + "Z": -217.02905 + }, + "TerritoryId": 814, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1031579, + "Position": { + "X": 735.89685, + "Y": 285.08194, + "Z": -82.35297 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1031577, + "Position": { + "X": -425.58942, + "Y": 417.21378, + "Z": -636.7438 + }, + "TerritoryId": 814, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Kholusia - Tomra", + "NextQuestId": 3717 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3717_A Scandal in Komra.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3717_A Scandal in Komra.json new file mode 100644 index 00000000..2f3509d7 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3717_A Scandal in Komra.json @@ -0,0 +1,220 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1031577, + "Position": { + "X": -425.58942, + "Y": 417.21378, + "Z": -636.7438 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1031586, + "Position": { + "X": 663.569, + "Y": 297.47797, + "Z": -162.24927 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "AetheryteShortcut": "Kholusia - Stilltide", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 547.1434, + "Y": 295.63748, + "Z": -219.3426 + }, + "TerritoryId": 814, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2010833, + "Position": { + "X": 545.4946, + "Y": 296.1317, + "Z": -218.79913 + }, + "TerritoryId": 814, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1031586, + "Position": { + "X": 663.569, + "Y": 297.47797, + "Z": -162.24927 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1031826, + "Position": { + "X": 623.1022, + "Y": 297.49335, + "Z": -199.51172 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1031578, + "Position": { + "X": 737.48376, + "Y": 285.0224, + "Z": -84.97754 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1031578, + "Position": { + "X": 737.48376, + "Y": 285.0224, + "Z": -84.97754 + }, + "TerritoryId": 814, + "InteractionType": "Emote", + "Emote": "doubt" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1031829, + "Position": { + "X": 215.28955, + "Y": 315.85886, + "Z": -17.349548 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "Position": { + "X": 215.44379, + "Y": 315.57245, + "Z": -22.744217 + }, + "StopDistance": 0.5, + "TerritoryId": 814, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 11435, + 11436 + ] + } + ] + }, + { + "Sequence": 9, + "Steps": [ + { + "Position": { + "X": 237.7035, + "Y": 308.6692, + "Z": -119.51825 + }, + "TerritoryId": 814, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1031828, + "Position": { + "X": 236.40796, + "Y": 309.01877, + "Z": -118.24219 + }, + "TerritoryId": 814, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 10, + "Steps": [ + { + "DataId": 2010844, + "Position": { + "X": 238.17798, + "Y": 308.5221, + "Z": -120.19531 + }, + "TerritoryId": 814, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1031586, + "Position": { + "X": 663.569, + "Y": 297.47797, + "Z": -162.24927 + }, + "TerritoryId": 814, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 3718 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3718_On the Threshold.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3718_On the Threshold.json new file mode 100644 index 00000000..9ebe35f2 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3718_On the Threshold.json @@ -0,0 +1,113 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1031586, + "Position": { + "X": 663.569, + "Y": 297.47797, + "Z": -162.24927 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1032079, + "Position": { + "X": 737.11743, + "Y": 285.0313, + "Z": -84.06195 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2010855, + "Position": { + "X": 738.3076, + "Y": 285.60303, + "Z": -82.871826 + }, + "StopDistance": 4, + "TerritoryId": 814, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1031837, + "Position": { + "X": -1.8158569, + "Y": -6.9233757E-09, + "Z": -90.013 + }, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "TerritoryId": 895, + "InteractionType": "Duty", + "ContentFinderConditionId": 700 + } + ] + }, + { + "Sequence": 5 + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1032021, + "Position": { + "X": -8.255188, + "Y": 0.02999778, + "Z": -66.66675 + }, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032020, + "Position": { + "X": -9.353821, + "Y": 0.037398916, + "Z": -66.88031 + }, + "StopDistance": 4, + "TerritoryId": 895, + "InteractionType": "CompleteQuest", + "NextQuestId": 3719 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3719_An Academic Dispute.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3719_An Academic Dispute.json new file mode 100644 index 00000000..e4afc186 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3719_An Academic Dispute.json @@ -0,0 +1,37 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032020, + "Position": { + "X": -9.353821, + "Y": 0.037398916, + "Z": -66.88031 + }, + "StopDistance": 4, + "TerritoryId": 895, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032228, + "Position": { + "X": -499.4736, + "Y": 484.00323, + "Z": 244.19006 + }, + "TerritoryId": 896, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3720_Tails, You Lose.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3720_Tails, You Lose.json new file mode 100644 index 00000000..22f98486 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3720_Tails, You Lose.json @@ -0,0 +1,454 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032228, + "Position": { + "X": -499.4736, + "Y": 484.00323, + "Z": 244.19006 + }, + "TerritoryId": 896, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_LUCKTA110_03720_Q2_000_000", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010848, + "Position": { + "X": -504.78372, + "Y": 483.97034, + "Z": 234.82104 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "Position": { + "X": -500.0601, + "Y": 464, + "Z": 209.26236 + }, + "TerritoryId": 896, + "InteractionType": "WalkTo" + }, + { + "DataId": 2010869, + "Position": { + "X": -505.2415, + "Y": 463.95044, + "Z": 217.60889 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "Position": { + "X": -500.03152, + "Y": 401, + "Z": -3.3307662 + }, + "TerritoryId": 896, + "InteractionType": "WalkTo" + }, + { + "DataId": 2010870, + "Position": { + "X": -541.619, + "Y": 400.99182, + "Z": -36.209717 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 1032073, + "Position": { + "X": -560.0824, + "Y": 383, + "Z": -139.08606 + }, + "TerritoryId": 896, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -557.9587, + "Y": 383, + "Z": -141.83781 + }, + "TerritoryId": 896, + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false + }, + { + "DataId": 1032025, + "Position": { + "X": -573.6935, + "Y": 352.99423, + "Z": -264.0879 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "DelaySecondsAtStart": 5 + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2010874, + "Position": { + "X": -626.5507, + "Y": 340.96277, + "Z": -367.02527 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 2010872, + "Position": { + "X": -697.87134, + "Y": 339.1621, + "Z": -378.34747 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 2010825, + "Position": { + "X": -708.21704, + "Y": 339.19275, + "Z": -350.57605 + }, + "TerritoryId": 896, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1032027, + "Position": { + "X": -675.1965, + "Y": 335.42987, + "Z": -293.87354 + }, + "TerritoryId": 896, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 2010882, + "Position": { + "X": -684.01624, + "Y": 335.8662, + "Z": -292.04242 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "TargetTerritoryId": 896 + }, + { + "DataId": 2010871, + "Position": { + "X": -676.2646, + "Y": -482.9328, + "Z": 612.4818 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 2010827, + "Position": { + "X": -688.2887, + "Y": -484.00098, + "Z": 582.2689 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2010826, + "Position": { + "X": -747.982, + "Y": -489.98248, + "Z": 603.1128 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2010875, + "Position": { + "X": -712.1538, + "Y": -495.99454, + "Z": 562.3406 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 2010873, + "Position": { + "X": -711.2383, + "Y": -498.00873, + "Z": 547.1732 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 1032150, + "Position": { + "X": -729.3965, + "Y": -499.74826, + "Z": 546.4408 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 2010944, + "Position": { + "X": -836.6369, + "Y": -492.24078, + "Z": 498.0697 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "TargetTerritoryId": 896 + }, + { + "DataId": 2010878, + "Position": { + "X": 874.7843, + "Y": -676.02045, + "Z": 884.9774 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 2010877, + "Position": { + "X": 911.13135, + "Y": -677.0276, + "Z": 894.1023 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 2010876, + "Position": { + "X": 900.05334, + "Y": -673.0602, + "Z": 828.70215 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 1032075, + "Position": { + "X": 899.5956, + "Y": -677, + "Z": 880.39966 + }, + "TerritoryId": 896, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1032228, + "Position": { + "X": -499.4736, + "Y": 484.00323, + "Z": 244.19006 + }, + "TerritoryId": 896, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 2010831, + "Position": { + "X": -499.01584, + "Y": 485.2826, + "Z": 280.26245 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "TargetTerritoryId": 895 + }, + { + "DataId": 1032152, + "Position": { + "X": -13.809448, + "Y": 0.039723, + "Z": -66.941345 + }, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 2010829, + "Position": { + "X": 1.4190674, + "Y": 0.83917236, + "Z": 2.5177002 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "TargetTerritoryId": 814 + }, + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "CompleteQuest", + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKTA110_03720_Q1_000_000", + "Answer": "TEXT_LUCKTA110_03720_A1_000_002" + } + ], + "NextQuestId": 3784 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3721_Heads, I Win.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3721_Heads, I Win.json new file mode 100644 index 00000000..dcc1a8d6 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3721_Heads, I Win.json @@ -0,0 +1,455 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032229, + "Position": { + "X": -501.1826, + "Y": 484.0032, + "Z": 244.2511 + }, + "StopDistance": 4, + "TerritoryId": 896, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_LUCKTA120_03721_Q2_000_000", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010848, + "Position": { + "X": -504.78372, + "Y": 483.97034, + "Z": 234.82104 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "Position": { + "X": -500.0601, + "Y": 464, + "Z": 209.26236 + }, + "TerritoryId": 896, + "InteractionType": "WalkTo" + }, + { + "DataId": 2010869, + "Position": { + "X": -505.2415, + "Y": 463.95044, + "Z": 217.60889 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "Position": { + "X": -500.03152, + "Y": 401, + "Z": -3.3307662 + }, + "TerritoryId": 896, + "InteractionType": "WalkTo" + }, + { + "DataId": 2010870, + "Position": { + "X": -541.619, + "Y": 400.99182, + "Z": -36.209717 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 1032074, + "Position": { + "X": -560.0824, + "Y": 383, + "Z": -139.08606 + }, + "TerritoryId": 896, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -557.9587, + "Y": 383, + "Z": -141.83781 + }, + "TerritoryId": 896, + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false + }, + { + "DataId": 1032026, + "Position": { + "X": -573.6935, + "Y": 352.99423, + "Z": -264.0879 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "DelaySecondsAtStart": 5 + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2010874, + "Position": { + "X": -626.5507, + "Y": 340.96277, + "Z": -367.02527 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 2010872, + "Position": { + "X": -697.87134, + "Y": 339.1621, + "Z": -378.34747 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 2010834, + "Position": { + "X": -708.21704, + "Y": 339.19275, + "Z": -350.57605 + }, + "TerritoryId": 896, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1032028, + "Position": { + "X": -675.1965, + "Y": 335.42987, + "Z": -293.87354 + }, + "TerritoryId": 896, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 2010882, + "Position": { + "X": -684.01624, + "Y": 335.8662, + "Z": -292.04242 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "TargetTerritoryId": 896 + }, + { + "DataId": 2010871, + "Position": { + "X": -676.2646, + "Y": -482.9328, + "Z": 612.4818 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 2010836, + "Position": { + "X": -688.2887, + "Y": -484.00098, + "Z": 582.2689 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2010835, + "Position": { + "X": -747.982, + "Y": -489.98248, + "Z": 603.1128 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2010875, + "Position": { + "X": -712.1538, + "Y": -495.99454, + "Z": 562.3406 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 2010873, + "Position": { + "X": -711.2383, + "Y": -498.00873, + "Z": 547.1732 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 1032150, + "Position": { + "X": -729.3965, + "Y": -499.74826, + "Z": 546.4408 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 2010944, + "Position": { + "X": -836.6369, + "Y": -492.24078, + "Z": 498.0697 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "TargetTerritoryId": 896 + }, + { + "DataId": 2010878, + "Position": { + "X": 874.7843, + "Y": -676.02045, + "Z": 884.9774 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 2010877, + "Position": { + "X": 911.13135, + "Y": -677.0276, + "Z": 894.1023 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 2010876, + "Position": { + "X": 900.05334, + "Y": -673.0602, + "Z": 828.70215 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 1032076, + "Position": { + "X": 899.93115, + "Y": -677, + "Z": 881.43726 + }, + "TerritoryId": 896, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1032228, + "Position": { + "X": -499.4736, + "Y": 484.00323, + "Z": 244.19006 + }, + "TerritoryId": 896, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 2010831, + "Position": { + "X": -499.01584, + "Y": 485.2826, + "Z": 280.26245 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "TargetTerritoryId": 895 + }, + { + "DataId": 1032152, + "Position": { + "X": -13.809448, + "Y": 0.039723, + "Z": -66.941345 + }, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 2010829, + "Position": { + "X": 1.4190674, + "Y": 0.83917236, + "Z": 2.5177002 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "TargetTerritoryId": 814 + }, + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "CompleteQuest", + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKTA120_03721_Q1_000_000", + "Answer": "TEXT_LUCKTA120_03721_A1_000_002" + } + ], + "NextQuestId": 3784 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3784_Carnivals and Confrontations.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3784_Carnivals and Confrontations.json new file mode 100644 index 00000000..d59a06cd --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3784_Carnivals and Confrontations.json @@ -0,0 +1,49 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 2010832, + "Position": { + "X": 738.3076, + "Y": 285.60303, + "Z": -82.871826 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true, + "TargetTerritoryId": 895 + }, + { + "DataId": 1032152, + "Position": { + "X": -13.809448, + "Y": 0.039723, + "Z": -66.941345 + }, + "TerritoryId": 895, + "InteractionType": "CompleteQuest", + "NextQuestId": 3785 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3785_One Way to Do It.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3785_One Way to Do It.json new file mode 100644 index 00000000..c98c57fe --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3785_One Way to Do It.json @@ -0,0 +1,89 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032152, + "Position": { + "X": -13.809448, + "Y": 0.039723, + "Z": -66.941345 + }, + "TerritoryId": 895, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010829, + "Position": { + "X": 1.4190674, + "Y": 0.83917236, + "Z": 2.5177002 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "TargetTerritoryId": 814 + }, + { + "DataId": 1031580, + "Position": { + "X": 665.21704, + "Y": 297.47797, + "Z": -159.77728 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 382.49646, + "Y": 312.8454, + "Z": -382.58423 + }, + "TerritoryId": 814, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 10410, + "MinimumKillCount": 1, + "RewardItemId": 2002972, + "RewardItemCount": 1 + } + ], + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1031580, + "Position": { + "X": 665.21704, + "Y": 297.47797, + "Z": -159.77728 + }, + "TerritoryId": 814, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 3952 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3952_We Can Rebuild Her.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3952_We Can Rebuild Her.json new file mode 100644 index 00000000..9f73fa53 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3952_We Can Rebuild Her.json @@ -0,0 +1,199 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "StopDistance": 4, + "TerritoryId": 814, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1032245, + "Position": { + "X": 622.73596, + "Y": 297.49292, + "Z": -199.42017 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1032244, + "Position": { + "X": 603.9978, + "Y": 297.43994, + "Z": -180.92627 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1032246, + "Position": { + "X": 594.8423, + "Y": 297.2672, + "Z": -176.01282 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2010832, + "Position": { + "X": 738.3076, + "Y": 285.60303, + "Z": -82.871826 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true, + "TargetTerritoryId": 895 + }, + { + "DataId": 1032152, + "Position": { + "X": -13.809448, + "Y": 0.039723, + "Z": -66.941345 + }, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2010830, + "Position": { + "X": -0.015319824, + "Y": 1.2664795, + "Z": -94.86542 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "TargetTerritoryId": 896 + }, + { + "Position": { + "X": -499.9735, + "Y": 463.36023, + "Z": 177.62115 + }, + "TerritoryId": 896, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": -499.9782, + "Y": 400.99997, + "Z": 4.3087606 + }, + "TerritoryId": 896, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": -557.9587, + "Y": 383, + "Z": -141.83781 + }, + "TerritoryId": 896, + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false + }, + { + "DataId": 2011156, + "Position": { + "X": -694.05664, + "Y": 339.1621, + "Z": -370.2602 + }, + "TerritoryId": 896, + "InteractionType": "Say", + "ChatMessage": { + "Key": "TEXT_LUCKTA301_03952_SAYTODO_000_220" + }, + "DelaySecondsAtStart": 5 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032020, + "Position": { + "X": -9.353821, + "Y": 0.037398916, + "Z": -66.88031 + }, + "TerritoryId": 895, + "InteractionType": "CompleteQuest", + "NextQuestId": 3953 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3953_Everything You Know Is Wrong.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3953_Everything You Know Is Wrong.json new file mode 100644 index 00000000..f0217cd8 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3953_Everything You Know Is Wrong.json @@ -0,0 +1,126 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032020, + "Position": { + "X": -9.353821, + "Y": 0.037398916, + "Z": -66.88031 + }, + "TerritoryId": 895, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "TerritoryId": 814, + "InteractionType": "Duty", + "ContentFinderConditionId": 736 + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1034040, + "Position": { + "X": -363.94293, + "Y": 103.83351, + "Z": 366.4148 + }, + "TerritoryId": 928, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2011108, + "Position": { + "X": -363.3631, + "Y": 103.990234, + "Z": 375.69226 + }, + "TerritoryId": 928, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 2011155, + "Position": { + "X": -383.81018, + "Y": 102.89148, + "Z": 389.12024 + }, + "TerritoryId": 928, + "InteractionType": "Interact", + "TargetTerritoryId": 814 + }, + { + "DataId": 2010832, + "Position": { + "X": 738.3076, + "Y": 285.60303, + "Z": -82.871826 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true, + "TargetTerritoryId": 895 + }, + { + "DataId": 1034044, + "Position": { + "X": -19.058533, + "Y": -3.501947E-11, + "Z": -58.365784 + }, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 2011136, + "Position": { + "X": -21.74414, + "Y": 0.6866455, + "Z": -58.396362 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "TargetTerritoryId": 895 + }, + { + "DataId": 1034031, + "Position": { + "X": -50.492126, + "Y": 0.037401117, + "Z": -121.53815 + }, + "TerritoryId": 895, + "InteractionType": "CompleteQuest", + "NextQuestId": 3954 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3954_Crime and Punishment.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3954_Crime and Punishment.json new file mode 100644 index 00000000..9b073768 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3954_Crime and Punishment.json @@ -0,0 +1,363 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1034030, + "Position": { + "X": -48.508484, + "Y": 0.029999997, + "Z": -120.50055 + }, + "TerritoryId": 895, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2011137, + "Position": { + "X": -49.5766, + "Y": 1.2054443, + "Z": -109.056274 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "TargetTerritoryId": 895 + }, + { + "DataId": 1034027, + "Position": { + "X": -7.7669067, + "Y": -3.1738587E-11, + "Z": -52.872498 + }, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1034025, + "Position": { + "X": -6.515625, + "Y": 0.029999863, + "Z": -52.84204 + }, + "StopDistance": 1, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1034016, + "Position": { + "X": -6.668213, + "Y": -3.3829915E-11, + "Z": -56.443176 + }, + "StopDistance": 5, + "TerritoryId": 895, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 8 + ] + }, + { + "DataId": 1034019, + "Position": { + "X": -4.9592285, + "Y": -3.3072475E-11, + "Z": -55.161438 + }, + "StopDistance": 5, + "TerritoryId": 895, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1034020, + "Position": { + "X": -4.348877, + "Y": -3.1869986E-11, + "Z": -53.11664 + }, + "StopDistance": 5, + "TerritoryId": 895, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + }, + { + "DataId": 1034017, + "Position": { + "X": -5.0507812, + "Y": 0.029999875, + "Z": -51.010986 + }, + "StopDistance": 5, + "TerritoryId": 895, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1034018, + "Position": { + "X": -6.729248, + "Y": 0.037395146, + "Z": -49.851257 + }, + "StopDistance": 5, + "TerritoryId": 895, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1034028, + "Position": { + "X": -9.140198, + "Y": 0.029994294, + "Z": -49.973328 + }, + "StopDistance": 5, + "TerritoryId": 895, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 4 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1034025, + "Position": { + "X": -6.515625, + "Y": 0.029999863, + "Z": -52.84204 + }, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1034025, + "Position": { + "X": -6.515625, + "Y": 0.029999863, + "Z": -52.84204 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKTA303_03954_Q1_000_000", + "Answer": "TEXT_LUCKTA303_03954_A1_000_004" + } + ] + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1034027, + "Position": { + "X": -7.7669067, + "Y": -3.1738587E-11, + "Z": -52.872498 + }, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 2011136, + "Position": { + "X": -21.74166, + "Y": 0.691666, + "Z": -58.37535 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "TargetTerritoryId": 895 + }, + { + "DataId": 1034030, + "Position": { + "X": -48.508484, + "Y": 0.029999997, + "Z": -120.50055 + }, + "StopDistance": 7, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 2011137, + "Position": { + "X": -49.55915, + "Y": 1.209601, + "Z": -109.0371 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "TargetTerritoryId": 895 + }, + { + "DataId": 1034027, + "Position": { + "X": -7.7669067, + "Y": -3.1738587E-11, + "Z": -52.872498 + }, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 9, + "Steps": [ + { + "DataId": 2010829, + "Position": { + "X": 1.4190674, + "Y": 0.83917236, + "Z": 2.5177002 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "TargetTerritoryId": 814 + }, + { + "DataId": 2011151, + "Position": { + "X": 467.79578, + "Y": 311.02466, + "Z": -189.1051 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 10, + "Steps": [ + { + "DataId": 2011152, + "Position": { + "X": 345.3269, + "Y": 320.14954, + "Z": -317.58606 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 11, + "Steps": [ + { + "DataId": 2011153, + "Position": { + "X": 466.26978, + "Y": 298.146, + "Z": -398.79456 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1034052, + "Position": { + "X": 618.58545, + "Y": 297.26346, + "Z": -170.24493 + }, + "TerritoryId": 814, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 3998 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3998_To Make Amends.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3998_To Make Amends.json new file mode 100644 index 00000000..1eae4da6 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/3998_To Make Amends.json @@ -0,0 +1,704 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1034052, + "Position": { + "X": 618.58545, + "Y": 297.26346, + "Z": -170.24493 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1034052, + "Position": { + "X": 618.58545, + "Y": 297.26346, + "Z": -170.24493 + }, + "TerritoryId": 814, + "InteractionType": "Emote", + "Emote": "comfort" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1034056, + "Position": { + "X": 657.52637, + "Y": 297.47794, + "Z": -145.22015 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1034932, + "Position": { + "X": 618.61584, + "Y": 297.26785, + "Z": -170.30597 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1034933, + "Position": { + "X": 412.46655, + "Y": 285.10947, + "Z": -163.74463 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1034934, + "Position": { + "X": -31.47937, + "Y": 330.8092, + "Z": -35.90454 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1034935, + "Position": { + "X": -475.36432, + "Y": 334.0526, + "Z": -53.97119 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1034936, + "Position": { + "X": -452.3537, + "Y": 65.77815, + "Z": 93.03418 + }, + "TerritoryId": 814, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1034930, + "Position": { + "X": 673.64, + "Y": 28.11754, + "Z": 272.9381 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "AetheryteShortcut": "Kholusia - Stilltide" + } + ] + }, + { + "Sequence": 9, + "Steps": [ + { + "DataId": 1034931, + "Position": { + "X": 534.08093, + "Y": 299.67776, + "Z": -184.22223 + }, + "StopDistance": 5, + "TerritoryId": 814, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKTA401_03998_Q6_000_000", + "Answer": "TEXT_LUCKTA401_03998_A6_000_002" + } + ] + } + ] + }, + { + "Sequence": 10, + "Steps": [ + { + "DataId": 1035129, + "Position": { + "X": 613.73303, + "Y": 325.6843, + "Z": -224.93329 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 11, + "Steps": [ + { + "DataId": 2011273, + "Position": { + "X": 574.9447, + "Y": 296.71167, + "Z": -175.55511 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 12, + "Steps": [ + { + "Position": { + "X": 702.07294, + "Y": 293.53958, + "Z": -159.18176 + }, + "TerritoryId": 814, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 928 + ] + } + } + }, + { + "DataId": 2011154, + "Position": { + "X": 703.1509, + "Y": 295.3993, + "Z": -160.20447 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "TargetTerritoryId": 928, + "SkipConditions": { + "StepIf": { + "InTerritory": [ + 928 + ] + } + } + }, + { + "Position": { + "X": -352.89597, + "Y": 106.840775, + "Z": 337.33798 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false + }, + { + "DataId": 2011274, + "Position": { + "X": -277.69897, + "Y": 69.90149, + "Z": 274.00623 + }, + "TerritoryId": 928, + "InteractionType": "Interact", + "DelaySecondsAtStart": 5 + } + ] + }, + { + "Sequence": 13, + "Steps": [ + { + "Position": { + "X": -271.62762, + "Y": 69.97228, + "Z": 273.0655 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false + }, + { + "TerritoryId": 928, + "InteractionType": "None", + "DelaySecondsAtStart": 2 + }, + { + "DataId": 2011109, + "Position": { + "X": -254.20007, + "Y": 29.984009, + "Z": 178.02698 + }, + "TerritoryId": 928, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "Position": { + "X": -234.40671, + "Y": 30, + "Z": 168.78214 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": -237.90593, + "Y": 36.4109, + "Z": 107.25123 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": -264.81836, + "Y": 20.597822, + "Z": 72.87652 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, + { + "Position": { + "X": -233.77907, + "Y": -3.860001, + "Z": 31.767477 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, + { + "DataId": 2011234, + "Position": { + "X": -230.12134, + "Y": -2.609314, + "Z": 11.612061 + }, + "TerritoryId": 928, + "InteractionType": "Interact", + "TargetTerritoryId": 928 + }, + { + "Position": { + "X": -229.71193, + "Y": -115.06235, + "Z": -115.379684 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false + }, + { + "TerritoryId": 928, + "InteractionType": "None", + "DelaySecondsAtStart": 2 + }, + { + "DataId": 2011110, + "Position": { + "X": -203.41809, + "Y": -150.53027, + "Z": -187.39612 + }, + "TerritoryId": 928, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "Position": { + "X": -229.93883, + "Y": -150.49908, + "Z": -219.08035 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo" + }, + { + "DataId": 2011111, + "Position": { + "X": -227.34424, + "Y": -149.06543, + "Z": -320.75995 + }, + "StopDistance": 1, + "TerritoryId": 928, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "Position": { + "X": -229.96237, + "Y": -168.28922, + "Z": -329.79776 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, + { + "Position": { + "X": -237.64621, + "Y": -168.16484, + "Z": -336.7267 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false, + "DelaySecondsAtStart": 2 + }, + { + "TerritoryId": 928, + "InteractionType": "None", + "DelaySecondsAtStart": 2 + }, + { + "DataId": 2011118, + "Position": { + "X": -295.9182, + "Y": -203.99792, + "Z": -320.9735 + }, + "TerritoryId": 928, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "Position": { + "X": -305.8408, + "Y": -204.6433, + "Z": -336.8385 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false + }, + { + "TerritoryId": 928, + "InteractionType": "None", + "DelaySecondsAtStart": 2 + }, + { + "DataId": 2011115, + "Position": { + "X": -386.25165, + "Y": -241.32147, + "Z": -314.99207 + }, + "TerritoryId": 928, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "Position": { + "X": -367.89325, + "Y": -241.31789, + "Z": -313.52274 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": -374.37668, + "Y": -244.75201, + "Z": -313.43954 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, + { + "Position": { + "X": -374.10797, + "Y": -244.75217, + "Z": -318.6855 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo" + }, + { + "DataId": 2011113, + "Position": { + "X": -372.85425, + "Y": -244.77002, + "Z": -303.18152 + }, + "TerritoryId": 928, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 2011114, + "Position": { + "X": -345.17438, + "Y": -244.77002, + "Z": -321.43134 + }, + "TerritoryId": 928, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "Position": { + "X": -358.27484, + "Y": -244.75198, + "Z": -312.8948 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": -364.58334, + "Y": -241.318, + "Z": -313.35168 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, + { + "DataId": 2011275, + "Position": { + "X": -366.50647, + "Y": -241.32147, + "Z": -311.57397 + }, + "StopDistance": 1, + "TerritoryId": 928, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 14, + "Steps": [ + { + "Position": { + "X": -366.50647, + "Y": -241.32147, + "Z": -311.57397 + }, + "StopDistance": 0.5, + "TerritoryId": 928, + "InteractionType": "Jump", + "JumpDestination": { + "DataId": 2011269, + "Position": { + "X": -366.558, + "Y": -249.74661, + "Z": -301.74612 + } + } + }, + { + "DataId": 2011112, + "Position": { + "X": -366.47595, + "Y": -249.80548, + "Z": -318.89832 + }, + "StopDistance": 1, + "TerritoryId": 928, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 2011269, + "Position": { + "X": -366.50647, + "Y": -248.43219, + "Z": -285.6947 + }, + "TerritoryId": 928, + "InteractionType": "Interact", + "TargetTerritoryId": 928 + }, + { + "DataId": 2011116, + "Position": { + "X": 193.89636, + "Y": -500.0229, + "Z": -89.7384 + }, + "TerritoryId": 928, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "Position": { + "X": 199.90454, + "Y": -500.00003, + "Z": -476.80316 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo" + }, + { + "DataId": 2011117, + "Position": { + "X": 253.13184, + "Y": -500.0229, + "Z": -484.39764 + }, + "TerritoryId": 928, + "InteractionType": "Interact", + "SkipConditions": { + "StepIf": { + "NotTargetable": true + } + } + }, + { + "DataId": 2011276, + "Position": { + "X": 200, + "Y": -478.47717, + "Z": -558.8312 + }, + "TerritoryId": 928, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 15, + "Steps": [ + { + "DataId": 1035130, + "Position": { + "X": -16.372986, + "Y": 0.039723, + "Z": -70.481445 + }, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 2010829, + "Position": { + "X": 1.4190674, + "Y": 0.83917236, + "Z": 2.5177002 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "TargetTerritoryId": 814 + }, + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 4034 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4034_Konogg, Alone.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4034_Konogg, Alone.json new file mode 100644 index 00000000..2b0f8e94 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4034_Konogg, Alone.json @@ -0,0 +1,213 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010832, + "Position": { + "X": 738.3076, + "Y": 285.60303, + "Z": -82.871826 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "TargetTerritoryId": 895, + "Fly": true + }, + { + "DataId": 1035131, + "Position": { + "X": -3.6469727, + "Y": -3.475783E-11, + "Z": -58.121643 + }, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2010829, + "Position": { + "X": 1.4190674, + "Y": 0.83917236, + "Z": 2.5177002 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "TargetTerritoryId": 814 + }, + { + "DataId": 1035132, + "Position": { + "X": 545.4337, + "Y": 295.66992, + "Z": -221.45422 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2011442, + "Position": { + "X": -8.957031, + "Y": 0.503479, + "Z": -65.26294 + }, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1035134, + "Position": { + "X": 711.635, + "Y": 286.3896, + "Z": -122.78937 + }, + "StopDistance": 7, + "TerritoryId": 814, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1034054, + "Position": { + "X": 659.75415, + "Y": 297.47797, + "Z": -145.15906 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1027299, + "Position": { + "X": 638.11694, + "Y": 297.44974, + "Z": -180.19385 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1027486, + "Position": { + "X": 608.8501, + "Y": 297.4718, + "Z": -165.45361 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 2011447, + "Position": { + "X": 711.6044, + "Y": 286.12183, + "Z": -121.50757 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1035135, + "Position": { + "X": -361.37946, + "Y": 105.987305, + "Z": 347.12744 + }, + "StopDistance": 5, + "TerritoryId": 928, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKTA501_04034_Q5_000_000", + "Answer": "TEXT_LUCKTA501_04034_A5_000_001" + }, + { + "Type": "List", + "Prompt": "TEXT_LUCKTA501_04034_Q6_000_000", + "Answer": "TEXT_LUCKTA501_04034_A6_000_001" + } + ], + "NextQuestId": 4035 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4035_Brave New World.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4035_Brave New World.json new file mode 100644 index 00000000..60d858be --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4035_Brave New World.json @@ -0,0 +1,215 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1035135, + "Position": { + "X": -361.37946, + "Y": 105.987305, + "Z": 347.12744 + }, + "StopDistance": 5, + "TerritoryId": 928, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKTA502_04035_Q1_000_000", + "Answer": "TEXT_LUCKTA502_04035_A1_000_001" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -352.89597, + "Y": 106.840775, + "Z": 337.33798 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false + }, + { + "Position": { + "X": -271.62762, + "Y": 69.97228, + "Z": 273.0655 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false, + "DelaySecondsAtStart": 2 + }, + { + "Position": { + "X": -234.40671, + "Y": 30, + "Z": 168.78214 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "DelaySecondsAtStart": 2 + }, + { + "Position": { + "X": -237.90593, + "Y": 36.4109, + "Z": 107.25123 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": -264.81836, + "Y": 20.597822, + "Z": 72.87652 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, + { + "Position": { + "X": -233.77907, + "Y": -3.860001, + "Z": 31.767477 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, + { + "DataId": 2011234, + "Position": { + "X": -230.12134, + "Y": -2.609314, + "Z": 11.612061 + }, + "TerritoryId": 928, + "InteractionType": "Interact", + "TargetTerritoryId": 928 + }, + { + "Position": { + "X": -229.71193, + "Y": -115.06235, + "Z": -115.379684 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false + }, + { + "Position": { + "X": -229.96237, + "Y": -168.28922, + "Z": -329.79776 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "DisableNavmesh": true, + "DelaySecondsAtStart": 2 + }, + { + "Position": { + "X": -237.64621, + "Y": -168.16484, + "Z": -336.7267 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false, + "DelaySecondsAtStart": 2 + }, + { + "Position": { + "X": -305.8408, + "Y": -204.6433, + "Z": -336.8385 + }, + "TerritoryId": 928, + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false, + "DelaySecondsAtStart": 2 + }, + { + "Position": { + "X": -366.50647, + "Y": -241.32147, + "Z": -311.57397 + }, + "StopDistance": 0.5, + "TerritoryId": 928, + "InteractionType": "Jump", + "JumpDestination": { + "DataId": 2011269, + "Position": { + "X": -366.558, + "Y": -249.74661, + "Z": -301.74612 + } + }, + "DelaySecondsAtStart": 2 + }, + { + "DataId": 2011269, + "Position": { + "X": -366.50647, + "Y": -248.43219, + "Z": -285.6947 + }, + "TerritoryId": 928, + "InteractionType": "Interact", + "TargetTerritoryId": 928 + }, + { + "DataId": 2011440, + "Position": { + "X": 200, + "Y": -478.47717, + "Z": -558.8312 + }, + "TerritoryId": 928, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 928, + "InteractionType": "Duty", + "ContentFinderConditionId": 779 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1035142, + "Position": { + "X": 701.9607, + "Y": 291.86115, + "Z": -142.443 + }, + "StopDistance": 5, + "TerritoryId": 814, + "InteractionType": "CompleteQuest", + "NextQuestId": 4036 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4036_It Takes a Village.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4036_It Takes a Village.json new file mode 100644 index 00000000..b93277a0 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4036_It Takes a Village.json @@ -0,0 +1,297 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1035142, + "Position": { + "X": 701.9607, + "Y": 291.86115, + "Z": -142.443 + }, + "StopDistance": 5, + "TerritoryId": 814, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010832, + "Position": { + "X": 738.3076, + "Y": 285.60303, + "Z": -82.871826 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "TargetTerritoryId": 895, + "Fly": true + }, + { + "DataId": 1035141, + "Position": { + "X": -13.382202, + "Y": 0.039723, + "Z": -66.11737 + }, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2010832, + "Position": { + "X": 738.3076, + "Y": 285.60303, + "Z": -82.871826 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "TargetTerritoryId": 895, + "Fly": true + }, + { + "DataId": 1035133, + "Position": { + "X": -6.881897, + "Y": 0.029997535, + "Z": -63.187683 + }, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2011441, + "Position": { + "X": -3.5858765, + "Y": -0.015319824, + "Z": -58.06067 + }, + "StopDistance": 4, + "TerritoryId": 895, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "Position": { + "X": 2.2522326, + "Y": 0, + "Z": -52.14471 + }, + "TerritoryId": 895, + "InteractionType": "WalkTo" + }, + { + "DataId": 1035148, + "Position": { + "X": 2.39563, + "Y": -3.2740335E-11, + "Z": -54.61206 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKTA503_04036_Q9_000_000", + "Answer": "TEXT_LUCKTA503_04036_A9_000_002" + } + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 8 + ] + }, + { + "DataId": 1035144, + "Position": { + "X": 3.9520264, + "Y": -3.2538423E-11, + "Z": -54.24591 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKTA503_04036_Q6_000_000", + "Answer": "TEXT_LUCKTA503_04036_A6_000_002" + } + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1035145, + "Position": { + "X": 4.8981323, + "Y": -3.0844622E-11, + "Z": -51.407654 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKTA503_04036_Q7_000_000", + "Answer": "TEXT_LUCKTA503_04036_A7_000_002" + } + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1035146, + "Position": { + "X": 4.3182373, + "Y": -3.024035E-11, + "Z": -50.400574 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKTA503_04036_Q8_000_000", + "Answer": "TEXT_LUCKTA503_04036_A8_000_001" + } + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1035147, + "Position": { + "X": 0.62561035, + "Y": -3.0313623E-11, + "Z": -50.522705 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKTA503_04036_Q10_000_000", + "Answer": "TEXT_LUCKTA503_04036_A10_000_002" + } + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1035630, + "Position": { + "X": 2.2124634, + "Y": -3.161355E-11, + "Z": -52.689453 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKTA503_04036_Q11_000_000", + "Answer": "TEXT_LUCKTA503_04036_A11_000_001" + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 2010829, + "Position": { + "X": 1.4190674, + "Y": 0.83917236, + "Z": 2.5177002 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "TargetTerritoryId": 814 + }, + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 4043 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4043_Komra Wasn't Built in a Day.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4043_Komra Wasn't Built in a Day.json new file mode 100644 index 00000000..50c9cfd2 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4043_Komra Wasn't Built in a Day.json @@ -0,0 +1,43 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKTA510_04043_Q1_000_000", + "Answer": "TEXT_LUCKTA510_04043_A1_000_001" + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1036042, + "Position": { + "X": 655.1765, + "Y": 297.57593, + "Z": -171.31305 + }, + "TerritoryId": 814, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4044_A Message from Konogg.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4044_A Message from Konogg.json new file mode 100644 index 00000000..96e2ac54 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4044_A Message from Konogg.json @@ -0,0 +1,21 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4045_Dwarves of a Beard.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4045_Dwarves of a Beard.json new file mode 100644 index 00000000..65ec863d --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4045_Dwarves of a Beard.json @@ -0,0 +1,21 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4046_Strange Glagg.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4046_Strange Glagg.json new file mode 100644 index 00000000..65ec863d --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4046_Strange Glagg.json @@ -0,0 +1,21 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4047_Dwarves of a Beard Freshened.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4047_Dwarves of a Beard Freshened.json new file mode 100644 index 00000000..65ec863d --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4047_Dwarves of a Beard Freshened.json @@ -0,0 +1,21 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4048_Stranger Glagg.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4048_Stranger Glagg.json new file mode 100644 index 00000000..65ec863d --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4048_Stranger Glagg.json @@ -0,0 +1,21 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4049_All's Well That Ends with Ale.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4049_All's Well That Ends with Ale.json new file mode 100644 index 00000000..65ec863d --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4049_All's Well That Ends with Ale.json @@ -0,0 +1,21 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4050_All That Grinds Is Not Gloom.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4050_All That Grinds Is Not Gloom.json new file mode 100644 index 00000000..4c16a443 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4050_All That Grinds Is Not Gloom.json @@ -0,0 +1,150 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1036042, + "Position": { + "X": 655.1765, + "Y": 297.57593, + "Z": -171.31305 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Kholusia - Stilltide", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKTA521_04050_Q1_000_000", + "Answer": "TEXT_LUCKTA521_04050_A1_000_002" + }, + { + "Type": "List", + "Prompt": "TEXT_LUCKTA521_04050_Q2_000_000", + "Answer": "TEXT_LUCKTA521_04050_A2_000_001" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010832, + "Position": { + "X": 738.3076, + "Y": 285.60303, + "Z": -82.871826 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "TargetTerritoryId": 895, + "Fly": true + }, + { + "DataId": 2010830, + "Position": { + "X": -0.015319824, + "Y": 1.2664795, + "Z": -94.86542 + }, + "TerritoryId": 895, + "InteractionType": "Interact", + "TargetTerritoryId": 896 + }, + { + "Position": { + "X": -499.9735, + "Y": 463.36023, + "Z": 177.62115 + }, + "TerritoryId": 896, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": -499.9782, + "Y": 400.99997, + "Z": 4.3087606 + }, + "TerritoryId": 896, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": -557.9587, + "Y": 383, + "Z": -141.83781 + }, + "TerritoryId": 896, + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false + }, + { + "DataId": 2011457, + "Position": { + "X": -643.4882, + "Y": 338.39917, + "Z": -353.8415 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "DelaySecondsAtStart": 2, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2011456, + "Position": { + "X": -679.56055, + "Y": 335.31702, + "Z": -307.88135 + }, + "TerritoryId": 896, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1036042, + "Position": { + "X": 655.1765, + "Y": 297.57593, + "Z": -171.31305 + }, + "TerritoryId": 814, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Kholusia - Stilltide", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4053_Whence the Heart Leads.json b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4053_Whence the Heart Leads.json new file mode 100644 index 00000000..8480e069 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Alliance Raid Quests/4053_Whence the Heart Leads.json @@ -0,0 +1,61 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest", + "Fly": true, + "AetheryteShortcut": "Kholusia - Stilltide", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1036045, + "Position": { + "X": 10.0251465, + "Y": 82.83513, + "Z": -53.60504 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "AetheryteShortcut": "Eulmore" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032227, + "Position": { + "X": 665.8884, + "Y": 297.47797, + "Z": -160.57074 + }, + "TerritoryId": 814, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Kholusia - Stilltide", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3904_Quality Parts, Guaranteed.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3904_Quality Parts, Guaranteed.json index 9e176954..b8255d94 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3904_Quality Parts, Guaranteed.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3904_Quality Parts, Guaranteed.json @@ -57,8 +57,7 @@ "Z": -423.84705 }, "TerritoryId": 813, - "InteractionType": "WalkTo", - "Fly": true + "InteractionType": "WalkTo" }, { "DataId": 1033712, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3905_The New Batch.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3905_The New Batch.json index 737476ba..44d799f0 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3905_The New Batch.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3905_The New Batch.json @@ -29,6 +29,40 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 2011179, + "Position": { + "X": -304.036, + "Y": 19.860376, + "Z": -244.1596 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "Fly": true, + "RequiredQuestVariables": [ + null, + null, + [ + { + "Low": 2 + }, + { + "Low": 3 + } + ], + null, + null, + null + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, { "DataId": 2011178, "Position": { @@ -39,6 +73,21 @@ "TerritoryId": 813, "InteractionType": "Interact", "Fly": true, + "RequiredQuestVariables": [ + null, + null, + [ + { + "Low": 1 + }, + { + "Low": 2 + } + ], + null, + null, + null + ], "CompletionQuestVariablesFlags": [ null, null, @@ -58,6 +107,21 @@ "TerritoryId": 813, "InteractionType": "Interact", "Fly": true, + "RequiredQuestVariables": [ + null, + null, + [ + { + "Low": 1 + }, + { + "Low": 3 + } + ], + null, + null, + null + ], "CompletionQuestVariablesFlags": [ null, null, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3905_The New Batch.md b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3905_The New Batch.md new file mode 100644 index 00000000..98f1daab --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3905_The New Batch.md @@ -0,0 +1,6 @@ +``` +0 0 x 0 0 0 | 2011177 2011178 2011179 + 33(1) | x x + 34(2) | x x + 35(3) | x x +``` diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3907_A Blueprint a Day.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3907_A Blueprint a Day.json index d73c93ee..24aad0b4 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3907_A Blueprint a Day.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3907_A Blueprint a Day.json @@ -30,8 +30,6 @@ { "Sequence": 1, "Steps": [ - - ] }, { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3908_Foundations of Steel.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3908_Foundations of Steel.json index d73c93ee..24aad0b4 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3908_Foundations of Steel.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3908_Foundations of Steel.json @@ -30,8 +30,6 @@ { "Sequence": 1, "Steps": [ - - ] }, { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3909_How Do You Do, Fellow Dwarves.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3909_How Do You Do, Fellow Dwarves.json index d73c93ee..d94c7315 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3909_How Do You Do, Fellow Dwarves.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3909_How Do You Do, Fellow Dwarves.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -30,8 +29,78 @@ { "Sequence": 1, "Steps": [ - - + { + "DataId": 1033770, + "Position": { + "X": -410.11676, + "Y": 91.978714, + "Z": -426.71857 + }, + "TerritoryId": 813, + "InteractionType": "Say", + "ChatMessage": { + "Key": "TEXT_BANDWA108_03909_SAYTODO_000_030" + }, + "Fly": true, + "RequiredQuestVariables": [ + null, + null, + [ + 16 + ], + null, + null, + null + ] + }, + { + "DataId": 1033771, + "Position": { + "X": -396.07843, + "Y": 93.51564, + "Z": -419.11957 + }, + "TerritoryId": 813, + "InteractionType": "Say", + "ChatMessage": { + "Key": "TEXT_BANDWA108_03909_SAYTODO_000_030" + }, + "Fly": true, + "RequiredQuestVariables": [ + null, + null, + [ + 32 + ], + null, + null, + null + ] + }, + { + "DataId": 1033772, + "Position": { + "X": -399.80164, + "Y": 91.33075, + "Z": -441.42828 + }, + "TerritoryId": 813, + "InteractionType": "Say", + "ChatMessage": { + "Key": "TEXT_BANDWA108_03909_SAYTODO_000_030" + }, + "Fly": true, + "RequiredQuestVariables": [ + null, + null, + [ + 48 + ], + null, + null, + null + ] + } ] }, { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3910_Wood for What Ales You.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3910_Wood for What Ales You.json index d73c93ee..45a43271 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3910_Wood for What Ales You.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3910_Wood for What Ales You.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -30,8 +29,38 @@ { "Sequence": 1, "Steps": [ - - + { + "DataId": 1033767, + "Position": { + "X": -608.6061, + "Y": 65.60085, + "Z": -431.81506 + }, + "TerritoryId": 813, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 813, + "InteractionType": "Craft", + "ItemId": 31159, + "ItemCount": 3 + }, + { + "DataId": 1033773, + "Position": { + "X": -629.3279, + "Y": 56.201706, + "Z": -139.29962 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "Fly": true + } ] }, { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3911_The Heart of Tankiness.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3911_The Heart of Tankiness.json index d73c93ee..24d97f94 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3911_The Heart of Tankiness.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3911_The Heart of Tankiness.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -30,13 +29,27 @@ { "Sequence": 1, "Steps": [ - - + { + "DataId": 1033767, + "Position": { + "X": -608.6061, + "Y": 65.60085, + "Z": -431.81506 + }, + "TerritoryId": 813, + "InteractionType": "Interact" + } ] }, { "Sequence": 255, "Steps": [ + { + "TerritoryId": 813, + "InteractionType": "Craft", + "ItemId": 31161, + "ItemCount": 1 + }, { "Position": { "X": -615.73865, @@ -44,8 +57,7 @@ "Z": -423.84705 }, "TerritoryId": 813, - "InteractionType": "WalkTo", - "Fly": true + "InteractionType": "WalkTo" }, { "DataId": 1033712, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3912_Boom and Dust.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3912_Boom and Dust.json index d73c93ee..24aad0b4 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3912_Boom and Dust.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3912_Boom and Dust.json @@ -30,8 +30,6 @@ { "Sequence": 1, "Steps": [ - - ] }, { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3913_One Hundred Tankards of Solitude.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3913_One Hundred Tankards of Solitude.json index d73c93ee..24aad0b4 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3913_One Hundred Tankards of Solitude.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3913_One Hundred Tankards of Solitude.json @@ -30,8 +30,6 @@ { "Sequence": 1, "Steps": [ - - ] }, { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3914_Cooler Tanks Prevail.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3914_Cooler Tanks Prevail.json index d73c93ee..24aad0b4 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3914_Cooler Tanks Prevail.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3914_Cooler Tanks Prevail.json @@ -30,8 +30,6 @@ { "Sequence": 1, "Steps": [ - - ] }, { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3918_Sealing the Deal.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3918_Sealing the Deal.json index d73c93ee..42390281 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3918_Sealing the Deal.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3918_Sealing the Deal.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -30,8 +29,39 @@ { "Sequence": 1, "Steps": [ - - + { + "DataId": 1033695, + "Position": { + "X": 117.05188, + "Y": 7.07016, + "Z": 667.38367 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 813, + "InteractionType": "Craft", + "ItemId": 31171, + "ItemCount": 1 + }, + { + "DataId": 1033696, + "Position": { + "X": 119.035645, + "Y": 7.096028, + "Z": 667.5974 + }, + "StopDistance": 5, + "TerritoryId": 813, + "InteractionType": "Interact" + } ] }, { @@ -45,6 +75,7 @@ }, "TerritoryId": 813, "InteractionType": "WalkTo", + "AetheryteShortcut": "Lakeland - Ostall Imperative", "Fly": true }, { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3919_Spreading the Word.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3919_Spreading the Word.json index d73c93ee..1de2f73f 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3919_Spreading the Word.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3919_Spreading the Word.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -30,8 +29,34 @@ { "Sequence": 1, "Steps": [ - - + { + "DataId": 1033697, + "Position": { + "X": 705.2262, + "Y": 20.93061, + "Z": 29.007324 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "AetheryteShortcut": "Lakeland - Fort Jobb", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1033697, + "Position": { + "X": 705.2262, + "Y": 20.93061, + "Z": 29.007324 + }, + "TerritoryId": 813, + "InteractionType": "Emote", + "Emote": "psych" + } ] }, { @@ -45,6 +70,7 @@ }, "TerritoryId": 813, "InteractionType": "WalkTo", + "AetheryteShortcut": "Lakeland - Ostall Imperative", "Fly": true }, { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3920_Targets Required.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3920_Targets Required.json index d73c93ee..24aad0b4 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3920_Targets Required.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3920_Targets Required.json @@ -30,8 +30,6 @@ { "Sequence": 1, "Steps": [ - - ] }, { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3921_Unbreakable Plate.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3921_Unbreakable Plate.json index d73c93ee..24aad0b4 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3921_Unbreakable Plate.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3921_Unbreakable Plate.json @@ -30,8 +30,6 @@ { "Sequence": 1, "Steps": [ - - ] }, { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3924_A Crude Awakening.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3924_A Crude Awakening.json index 6831c8ea..53df293d 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3924_A Crude Awakening.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3924_A Crude Awakening.json @@ -39,7 +39,6 @@ "TerritoryId": 813, "InteractionType": "Interact" } - ] }, { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3925_Fast and Loud.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3925_Fast and Loud.json index d73c93ee..f11fc566 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3925_Fast and Loud.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3925_Fast and Loud.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -30,13 +29,28 @@ { "Sequence": 1, "Steps": [ - - + { + "DataId": 1034071, + "Position": { + "X": -171.4046, + "Y": 5.779212, + "Z": -110.27698 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "Fly": true + } ] }, { "Sequence": 255, "Steps": [ + { + "TerritoryId": 813, + "InteractionType": "Craft", + "ItemId": 31179, + "ItemCount": 3 + }, { "Position": { "X": -615.73865, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3929_Substitute Tester.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3929_Substitute Tester.json index d73c93ee..24aad0b4 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3929_Substitute Tester.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Dailies/3929_Substitute Tester.json @@ -30,8 +30,6 @@ { "Sequence": 1, "Steps": [ - - ] }, { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Story/3898_I Heard You Like Tanks.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Story/3898_I Heard You Like Tanks.json new file mode 100644 index 00000000..7fe3677c --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Dwarves/Story/3898_I Heard You Like Tanks.json @@ -0,0 +1,158 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1033710, + "Position": { + "X": -607.72107, + "Y": 65.60101, + "Z": -412.71082 + }, + "TerritoryId": 813, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -357.15628, + "Y": 108.72211, + "Z": -680.6214 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1033732, + "Position": { + "X": -356.22186, + "Y": 108.722115, + "Z": -682.3072 + }, + "TerritoryId": 813, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1033733, + "Position": { + "X": -357.16797, + "Y": 108.722115, + "Z": -683.1922 + }, + "StopDistance": 5, + "TerritoryId": 813, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_BANDWA003_03898_SYSTEM_000_046", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1033769, + "Position": { + "X": -358.114, + "Y": 108.722115, + "Z": -683.43634 + }, + "StopDistance": 5, + "TerritoryId": 813, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1027826, + "Position": { + "X": 89.15845, + "Y": 0.49999997, + "Z": -145.4643 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Dossal Gate" + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1033710, + "Position": { + "X": -607.72107, + "Y": 65.60101, + "Z": -412.71082 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "AetheryteShortcut": "Lakeland - Ostall Imperative", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1033749, + "Position": { + "X": -628.04614, + "Y": 65.60091, + "Z": -414.66394 + }, + "TerritoryId": 813, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "TerritoryId": 813, + "InteractionType": "Craft", + "ItemId": 31141, + "ItemCount": 1 + }, + { + "DataId": 1033710, + "Position": { + "X": -607.72107, + "Y": 65.60101, + "Z": -412.71082 + }, + "TerritoryId": 813, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3691_Sharing Is Caring.md b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3691_Sharing Is Caring.md index b265144d..b3a5b92a 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3691_Sharing Is Caring.md +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3691_Sharing Is Caring.md @@ -1,6 +1,7 @@ ## Sharing is Caring QuestWork: + ``` 0 0 0 x 0 0 1 → 1032140 diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3692_The Aesthetician of Il Mheg.md b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3692_The Aesthetician of Il Mheg.md index 5192727e..d699509d 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3692_The Aesthetician of Il Mheg.md +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3692_The Aesthetician of Il Mheg.md @@ -1,6 +1,7 @@ ## The Aesthetician of Il Mheg QuestWork: + ``` 0 x 0 0 0 0 | QW after first 1 → 2010860 2010863 | 1 18 0 0 0 128 diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3694_I Dream of Shinies.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3694_I Dream of Shinies.json index 39d0bba5..942f83aa 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3694_I Dream of Shinies.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3694_I Dream of Shinies.json @@ -55,7 +55,9 @@ null, null, null, - [1], + [ + 1 + ], null, null ] @@ -74,7 +76,9 @@ null, null, null, - [2], + [ + 2 + ], null, null ] @@ -93,7 +97,9 @@ null, null, null, - [3], + [ + 3 + ], null, null ] diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3698_Porxine Perfection.md b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3698_Porxine Perfection.md index 60f64cd9..11a80286 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3698_Porxine Perfection.md +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3698_Porxine Perfection.md @@ -1,6 +1,7 @@ ## Porxine Perfection QuestWork: + ``` 0 0 xx 0 0 0 16 → 2010891 2010892 diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3699_The Big Sleep.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3699_The Big Sleep.json index 0598b925..4afb31d4 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3699_The Big Sleep.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3699_The Big Sleep.json @@ -34,7 +34,9 @@ "RequiredQuestVariables": [ null, null, - [16], + [ + 16 + ], null, null, null @@ -53,7 +55,9 @@ "RequiredQuestVariables": [ null, null, - [32], + [ + 32 + ], null, null, null @@ -72,7 +76,9 @@ "RequiredQuestVariables": [ null, null, - [48], + [ + 48 + ], null, null, null diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3701_Amazing Graze.md b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3701_Amazing Graze.md index e17235aa..8c708cbf 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3701_Amazing Graze.md +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3701_Amazing Graze.md @@ -1,6 +1,7 @@ ## Amazing Graze Sequence 2: + ``` 0 x 0 0 0 0 1 → 2010896 2010897 diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3702_Pure Imagination.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3702_Pure Imagination.json index 3ecf56b4..5c158143 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3702_Pure Imagination.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3702_Pure Imagination.json @@ -34,7 +34,9 @@ null, null, null, - [2], + [ + 2 + ], null, null ] @@ -53,7 +55,9 @@ null, null, null, - [1], + [ + 1 + ], null, null ] @@ -72,7 +76,9 @@ null, null, null, - [3], + [ + 3 + ], null, null ] diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3702_Pure Imagination.md b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3702_Pure Imagination.md index d524188b..5245b240 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3702_Pure Imagination.md +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3702_Pure Imagination.md @@ -1,6 +1,7 @@ ## Pure Imagination QuestWork: + ``` 0 0 0 x 0 0 1 → 2010899 diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3703_Raiders of the Lost Pork.md b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3703_Raiders of the Lost Pork.md index fd1f8a87..ad58c18e 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3703_Raiders of the Lost Pork.md +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3703_Raiders of the Lost Pork.md @@ -1,6 +1,7 @@ ## Raiders of the Lost Pork QuestWork: + ``` 0 x 0 0 0 0 16 → Tall Fuath (1032167) diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3704_Pebble without a Cause.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3704_Pebble without a Cause.json index 7f2d3d48..057aee7d 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3704_Pebble without a Cause.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3704_Pebble without a Cause.json @@ -33,7 +33,9 @@ "RequiredQuestVariables": [ null, null, - [3], + [ + 3 + ], null, null, null @@ -52,7 +54,9 @@ "RequiredQuestVariables": [ null, null, - [1], + [ + 1 + ], null, null, null @@ -71,7 +75,9 @@ "RequiredQuestVariables": [ null, null, - [2], + [ + 2 + ], null, null, null diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3705_There's Always a Stupider Fish.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3705_There's Always a Stupider Fish.json index 5ca7c634..1954a0ed 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3705_There's Always a Stupider Fish.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3705_There's Always a Stupider Fish.json @@ -42,7 +42,9 @@ "DisableNavmesh": true, "RequiredQuestVariables": [ null, - [2], + [ + 2 + ], null, null, null, @@ -61,7 +63,9 @@ "DisableNavmesh": true, "RequiredQuestVariables": [ null, - [3], + [ + 3 + ], null, null, null, @@ -80,7 +84,9 @@ "DisableNavmesh": true, "RequiredQuestVariables": [ null, - [1], + [ + 1 + ], null, null, null, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3707_Not the Beavers.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3707_Not the Beavers.json index ae181ec1..8d99337d 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3707_Not the Beavers.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3707_Not the Beavers.json @@ -28,7 +28,7 @@ "Z": 755.58093 }, "TerritoryId": 816, - "InteractionType": "Instruction", + "InteractionType": "Snipe", "Fly": true, "Comment": "Throw Porxies at Beavers" } diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3716_The Chaser.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3716_The Chaser.json index 177e155a..790020cd 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3716_The Chaser.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3716_The Chaser.json @@ -35,7 +35,9 @@ "RequiredQuestVariables": [ null, null, - [1], + [ + 1 + ], null, null, null @@ -55,7 +57,9 @@ "RequiredQuestVariables": [ null, null, - [2], + [ + 2 + ], null, null, null diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3716_The Chaser.md b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3716_The Chaser.md index 352f3b22..3242d75e 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3716_The Chaser.md +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Dailies/3716_The Chaser.md @@ -1,3 +1,3 @@ 0 0 ? 0 0 0 - 1 → 1032203 - 2 → 1032202 +1 → 1032203 +2 → 1032202 diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Story/3684_Sustenance for the Soul.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Story/3684_Sustenance for the Soul.json index a60a9eb8..75b26eac 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Story/3684_Sustenance for the Soul.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Story/3684_Sustenance for the Soul.json @@ -88,7 +88,14 @@ "TerritoryId": 814, "InteractionType": "Interact", "AetheryteShortcut": "Kholusia - Wright", - "Fly": true + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_BANPIX002_03684_Q1_000_000", + "Answer": "TEXT_BANPIX002_03684_A1_000_001" + } + ] } ] }, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Story/3687_As the Heart Bids.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Story/3687_As the Heart Bids.json new file mode 100644 index 00000000..d5c95707 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Story/3687_As the Heart Bids.json @@ -0,0 +1,203 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1031806, + "Position": { + "X": -464.59143, + "Y": 71.76874, + "Z": 573.8766 + }, + "TerritoryId": 816, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1031892, + "Position": { + "X": -461.5702, + "Y": 72.51754, + "Z": 586.48047 + }, + "TerritoryId": 816, + "InteractionType": "Interact", + "TargetTerritoryId": 891 + }, + { + "DataId": 1031883, + "Position": { + "X": -116.07544, + "Y": 9.440084, + "Z": -41.428284 + }, + "TerritoryId": 891, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1031881, + "Position": { + "X": -115.03784, + "Y": 9.440084, + "Z": -38.651123 + }, + "TerritoryId": 891, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1031204, + "Position": { + "X": 481.95605, + "Y": 90.43779, + "Z": -656.09216 + }, + "TerritoryId": 816, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Il Mheg - Wolekdorf" + }, + { + "Position": { + "X": -107.78667, + "Y": 108.39998, + "Z": -840.88965 + }, + "TerritoryId": 816, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Il Mheg - Pla Enni" + }, + { + "DataId": 1027673, + "Position": { + "X": -106.06549, + "Y": 108.39998, + "Z": -841.7639 + }, + "TerritoryId": 816, + "InteractionType": "Interact" + }, + { + "DataId": 1027656, + "Position": { + "X": -291.61517, + "Y": 40.324036, + "Z": 456.65674 + }, + "TerritoryId": 816, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Il Mheg - Lydha Lran" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1031807, + "Position": { + "X": -465.93427, + "Y": 71.48343, + "Z": 571.8623 + }, + "TerritoryId": 816, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1031808, + "Position": { + "X": -461.53967, + "Y": 72.51729, + "Z": 586.48047 + }, + "TerritoryId": 816, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1031808, + "Position": { + "X": -461.53967, + "Y": 72.51729, + "Z": 586.48047 + }, + "TerritoryId": 816, + "InteractionType": "SinglePlayerDuty" + } + ] + }, + { + "Sequence": 7 + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1031886, + "Position": { + "X": 38.345825, + "Y": -4.6399317, + "Z": 24.76538 + }, + "TerritoryId": 892, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032365, + "Position": { + "X": 56.412598, + "Y": 5.5911026, + "Z": 116.16687 + }, + "TerritoryId": 892, + "InteractionType": "Interact", + "TargetTerritoryId": 816 + }, + { + "DataId": 1031806, + "Position": { + "X": -464.59143, + "Y": 71.76874, + "Z": 573.8766 + }, + "TerritoryId": 816, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Story/3688_Forever and a Dream.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Story/3688_Forever and a Dream.json new file mode 100644 index 00000000..44ec1f14 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Story/3688_Forever and a Dream.json @@ -0,0 +1,73 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1031806, + "Position": { + "X": -464.59143, + "Y": 71.76874, + "Z": 573.8766 + }, + "TerritoryId": 816, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1031893, + "Position": { + "X": -461.53967, + "Y": 72.51729, + "Z": 586.48047 + }, + "TerritoryId": 816, + "InteractionType": "Interact", + "TargetTerritoryId": 892 + }, + { + "DataId": 1031890, + "Position": { + "X": 55.649536, + "Y": -6.167951, + "Z": 8.041443 + }, + "TerritoryId": 892, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032365, + "Position": { + "X": 56.412598, + "Y": 5.5911026, + "Z": 116.16687 + }, + "TerritoryId": 892, + "InteractionType": "Interact", + "TargetTerritoryId": 816 + }, + { + "DataId": 1031806, + "Position": { + "X": -464.59143, + "Y": 71.76874, + "Z": 573.8766 + }, + "TerritoryId": 816, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3806_A Tool's Errand.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3806_A Tool's Errand.json index d9625d0d..3a11c275 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3806_A Tool's Errand.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3806_A Tool's Errand.json @@ -21,16 +21,9 @@ "Sequence": 255, "Steps": [ { - "Position": { - "X": 788.1569, - "Y": -45.82557, - "Z": -212.9306 - }, "TerritoryId": 817, - "InteractionType": "WalkTo", - "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 29517, @@ -43,6 +36,17 @@ } ] }, + { + "Position": { + "X": 788.1569, + "Y": -45.82557, + "Z": -212.9306 + }, + "TerritoryId": 817, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Rak'tika - Fanow", + "Fly": true + }, { "DataId": 1032643, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3807_Where the Sun Don't Shine.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3807_Where the Sun Don't Shine.json index 45b2176d..194836db 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3807_Where the Sun Don't Shine.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3807_Where the Sun Don't Shine.json @@ -21,15 +21,9 @@ "Sequence": 255, "Steps": [ { - "Position": { - "X": 788.1569, - "Y": -45.82557, - "Z": -212.9306 - }, "TerritoryId": 817, - "InteractionType": "WalkTo", - "Fly": true, - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 29518, @@ -42,6 +36,16 @@ } ] }, + { + "Position": { + "X": 788.1569, + "Y": -45.82557, + "Z": -212.9306 + }, + "TerritoryId": 817, + "InteractionType": "WalkTo", + "Fly": true + }, { "DataId": 1032643, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3808_A Touch of Home.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3808_A Touch of Home.json index 5f67cc1d..5fa818a8 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3808_A Touch of Home.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3808_A Touch of Home.json @@ -21,16 +21,9 @@ "Sequence": 255, "Steps": [ { - "Position": { - "X": 788.1569, - "Y": -45.82557, - "Z": -212.9306 - }, "TerritoryId": 817, - "InteractionType": "WalkTo", - "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 29519, @@ -43,6 +36,17 @@ } ] }, + { + "Position": { + "X": 788.1569, + "Y": -45.82557, + "Z": -212.9306 + }, + "TerritoryId": 817, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Rak'tika - Fanow", + "Fly": true + }, { "DataId": 1032643, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3809_Mother's Recipe.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3809_Mother's Recipe.json index 158b9100..e0e1def3 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3809_Mother's Recipe.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3809_Mother's Recipe.json @@ -21,16 +21,9 @@ "Sequence": 255, "Steps": [ { - "Position": { - "X": 788.1569, - "Y": -45.82557, - "Z": -212.9306 - }, "TerritoryId": 817, - "InteractionType": "WalkTo", - "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 29520, @@ -43,6 +36,17 @@ } ] }, + { + "Position": { + "X": 788.1569, + "Y": -45.82557, + "Z": -212.9306 + }, + "TerritoryId": 817, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Rak'tika - Fanow", + "Fly": true + }, { "DataId": 1032643, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3810_Power to the Vegetables.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3810_Power to the Vegetables.json index e7718beb..ed0114e4 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3810_Power to the Vegetables.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3810_Power to the Vegetables.json @@ -88,12 +88,7 @@ "TerritoryId": 817, "InteractionType": "WalkTo", "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ - - - - ] + "Fly": true }, { "DataId": 1032643, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3811_Rational Thinking.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3811_Rational Thinking.json index e81c302d..1e420bdf 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3811_Rational Thinking.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3811_Rational Thinking.json @@ -21,16 +21,9 @@ "Sequence": 255, "Steps": [ { - "Position": { - "X": 788.1569, - "Y": -45.82557, - "Z": -212.9306 - }, "TerritoryId": 817, - "InteractionType": "WalkTo", - "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 29521, @@ -43,6 +36,17 @@ } ] }, + { + "Position": { + "X": 788.1569, + "Y": -45.82557, + "Z": -212.9306 + }, + "TerritoryId": 817, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Rak'tika - Fanow", + "Fly": true + }, { "DataId": 1032643, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3812_Making Scents.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3812_Making Scents.json index 86de8b47..6b0ac904 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3812_Making Scents.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3812_Making Scents.json @@ -21,16 +21,9 @@ "Sequence": 255, "Steps": [ { - "Position": { - "X": 788.1569, - "Y": -45.82557, - "Z": -212.9306 - }, "TerritoryId": 817, - "InteractionType": "WalkTo", - "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 29522, @@ -43,6 +36,17 @@ } ] }, + { + "Position": { + "X": 788.1569, + "Y": -45.82557, + "Z": -212.9306 + }, + "TerritoryId": 817, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Rak'tika - Fanow", + "Fly": true + }, { "DataId": 1032643, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3813_Marks of Friendship.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3813_Marks of Friendship.json index 5b359ba6..165063fb 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3813_Marks of Friendship.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3813_Marks of Friendship.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -18,6 +17,45 @@ } ] }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1027719, + "Position": { + "X": 303.5172, + "Y": 34.242825, + "Z": -146.65448 + }, + "TerritoryId": 817, + "InteractionType": "Interact", + "AetheryteShortcut": "Rak'tika - Fanow", + "Fly": true + }, + { + "DataId": 1027715, + "Position": { + "X": 411.21533, + "Y": 33.637783, + "Z": -128.5268 + }, + "TerritoryId": 817, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 1027713, + "Position": { + "X": 446.70776, + "Y": 34.051743, + "Z": -117.17407 + }, + "TerritoryId": 817, + "InteractionType": "Interact", + "Fly": true + } + ] + }, { "Sequence": 255, "Steps": [ @@ -29,13 +67,7 @@ }, "TerritoryId": 817, "InteractionType": "WalkTo", - "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ - - - - ] + "Fly": true }, { "DataId": 1032643, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3814_Prayers and Poison.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3814_Prayers and Poison.json index 5b359ba6..6fa2638b 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3814_Prayers and Poison.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3814_Prayers and Poison.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -21,6 +20,22 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 817, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 29523, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 29549, + "ItemCount": 3 + } + ] + }, { "Position": { "X": 788.1569, @@ -30,12 +45,7 @@ "TerritoryId": 817, "InteractionType": "WalkTo", "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ - - - - ] + "Fly": true }, { "DataId": 1032643, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3815_Salve Our Souls.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3815_Salve Our Souls.json index 5b359ba6..1a63219d 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3815_Salve Our Souls.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3815_Salve Our Souls.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -21,6 +20,22 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 817, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 29524, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 29550, + "ItemCount": 3 + } + ] + }, { "Position": { "X": 788.1569, @@ -30,12 +45,7 @@ "TerritoryId": 817, "InteractionType": "WalkTo", "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ - - - - ] + "Fly": true }, { "DataId": 1032643, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3816_Rings of Pattern.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3816_Rings of Pattern.json index 5b359ba6..bac8bfae 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3816_Rings of Pattern.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3816_Rings of Pattern.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -21,6 +20,22 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 817, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 29525, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 29551, + "ItemCount": 3 + } + ] + }, { "Position": { "X": 788.1569, @@ -30,12 +45,7 @@ "TerritoryId": 817, "InteractionType": "WalkTo", "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ - - - - ] + "Fly": true }, { "DataId": 1032643, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3817_You Dirty Rats.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3817_You Dirty Rats.json index 5b359ba6..f0198739 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3817_You Dirty Rats.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3817_You Dirty Rats.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -21,6 +20,22 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 817, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 29526, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 29552, + "ItemCount": 3 + } + ] + }, { "Position": { "X": 788.1569, @@ -30,12 +45,7 @@ "TerritoryId": 817, "InteractionType": "WalkTo", "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ - - - - ] + "Fly": true }, { "DataId": 1032643, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3818_If It's Broke, Fix It.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3818_If It's Broke, Fix It.json index 5b359ba6..8d0ac16d 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3818_If It's Broke, Fix It.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3818_If It's Broke, Fix It.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -21,6 +20,22 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 817, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 29527, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 29553, + "ItemCount": 3 + } + ] + }, { "Position": { "X": 788.1569, @@ -30,12 +45,7 @@ "TerritoryId": 817, "InteractionType": "WalkTo", "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ - - - - ] + "Fly": true }, { "DataId": 1032643, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3820_The Qitari Book of Records.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3820_The Qitari Book of Records.json index 1a56d60e..204ea239 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3820_The Qitari Book of Records.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3820_The Qitari Book of Records.json @@ -21,16 +21,9 @@ "Sequence": 255, "Steps": [ { - "Position": { - "X": 788.1569, - "Y": -45.82557, - "Z": -212.9306 - }, "TerritoryId": 817, - "InteractionType": "WalkTo", - "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 29528, @@ -41,10 +34,19 @@ "ItemId": 29554, "ItemCount": 3 } - - ] }, + { + "Position": { + "X": 788.1569, + "Y": -45.82557, + "Z": -212.9306 + }, + "TerritoryId": 817, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Rak'tika - Fanow", + "Fly": true + }, { "DataId": 1032643, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3821_Meat and Greet.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3821_Meat and Greet.json index 3d5f7dcb..ffa6ff83 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3821_Meat and Greet.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3821_Meat and Greet.json @@ -21,16 +21,9 @@ "Sequence": 255, "Steps": [ { - "Position": { - "X": 788.1569, - "Y": -45.82557, - "Z": -212.9306 - }, "TerritoryId": 817, - "InteractionType": "WalkTo", - "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 29529, @@ -43,6 +36,17 @@ } ] }, + { + "Position": { + "X": 788.1569, + "Y": -45.82557, + "Z": -212.9306 + }, + "TerritoryId": 817, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Rak'tika - Fanow", + "Fly": true + }, { "DataId": 1032643, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3822_I Have Never Exploded.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3822_I Have Never Exploded.json index 5b359ba6..dec082cd 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3822_I Have Never Exploded.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3822_I Have Never Exploded.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -21,6 +20,22 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 817, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 29530, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 29556, + "ItemCount": 3 + } + ] + }, { "Position": { "X": 788.1569, @@ -30,12 +45,7 @@ "TerritoryId": 817, "InteractionType": "WalkTo", "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ - - - - ] + "Fly": true }, { "DataId": 1032643, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3823_By the Power Invested in Scree.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3823_By the Power Invested in Scree.json index 5b359ba6..e0b0d590 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3823_By the Power Invested in Scree.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3823_By the Power Invested in Scree.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -18,6 +17,66 @@ } ] }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1032663, + "Position": { + "X": 793.97266, + "Y": -45.811764, + "Z": -188.03699 + }, + "TerritoryId": 817, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1032829, + "Position": { + "X": 488.3954, + "Y": 34.798103, + "Z": 232.37964 + }, + "TerritoryId": 817, + "InteractionType": "Action", + "Action": "Peculiar Light", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1032828, + "Position": { + "X": 352.16296, + "Y": 28.242743, + "Z": 303.2119 + }, + "TerritoryId": 817, + "InteractionType": "Action", + "Action": "Peculiar Light", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, { "Sequence": 255, "Steps": [ @@ -30,12 +89,7 @@ "TerritoryId": 817, "InteractionType": "WalkTo", "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ - - - - ] + "Fly": true }, { "DataId": 1032643, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3824_Rock 'n Ronka.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3824_Rock 'n Ronka.json index 5b359ba6..7746ab7a 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3824_Rock 'n Ronka.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3824_Rock 'n Ronka.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -21,6 +20,22 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 817, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 29531, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 29557, + "ItemCount": 3 + } + ] + }, { "Position": { "X": 788.1569, @@ -30,12 +45,7 @@ "TerritoryId": 817, "InteractionType": "WalkTo", "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ - - - - ] + "Fly": true }, { "DataId": 1032643, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3825_There's No Clean Like Qhoterl Clean.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3825_There's No Clean Like Qhoterl Clean.json index 5b359ba6..b5e71d0b 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3825_There's No Clean Like Qhoterl Clean.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3825_There's No Clean Like Qhoterl Clean.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -21,6 +20,22 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 817, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 29532, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 29558, + "ItemCount": 3 + } + ] + }, { "Position": { "X": 788.1569, @@ -30,12 +45,7 @@ "TerritoryId": 817, "InteractionType": "WalkTo", "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ - - - - ] + "Fly": true }, { "DataId": 1032643, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3827_Her Splendid Materials.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3827_Her Splendid Materials.json index 0ae024dc..6b71e791 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3827_Her Splendid Materials.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3827_Her Splendid Materials.json @@ -21,16 +21,9 @@ "Sequence": 255, "Steps": [ { - "Position": { - "X": 788.1569, - "Y": -45.82557, - "Z": -212.9306 - }, "TerritoryId": 817, - "InteractionType": "WalkTo", - "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 29533, @@ -43,6 +36,17 @@ } ] }, + { + "Position": { + "X": 788.1569, + "Y": -45.82557, + "Z": -212.9306 + }, + "TerritoryId": 817, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Rak'tika - Fanow", + "Fly": true + }, { "DataId": 1032643, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3828_Splendid Eats.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3828_Splendid Eats.json index ce85c188..9442335f 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3828_Splendid Eats.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3828_Splendid Eats.json @@ -21,16 +21,9 @@ "Sequence": 255, "Steps": [ { - "Position": { - "X": 788.1569, - "Y": -45.82557, - "Z": -212.9306 - }, "TerritoryId": 817, - "InteractionType": "WalkTo", - "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 29534, @@ -43,6 +36,17 @@ } ] }, + { + "Position": { + "X": 788.1569, + "Y": -45.82557, + "Z": -212.9306 + }, + "TerritoryId": 817, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Rak'tika - Fanow", + "Fly": true + }, { "DataId": 1032643, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3829_Eggspotting.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3829_Eggspotting.json index 5b359ba6..6fc790bd 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3829_Eggspotting.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3829_Eggspotting.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -18,6 +17,54 @@ } ] }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1032830, + "Position": { + "X": -134.02002, + "Y": -18.460577, + "Z": 303.5476 + }, + "TerritoryId": 817, + "InteractionType": "Interact", + "AetheryteShortcut": "Rak'tika - Slitherbough" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1032831, + "Position": { + "X": -54.795166, + "Y": 0.7328947, + "Z": 217.09009 + }, + "TerritoryId": 817, + "InteractionType": "UseItem", + "ItemId": 2002980, + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1032830, + "Position": { + "X": -134.02002, + "Y": -18.460577, + "Z": 303.5476 + }, + "TerritoryId": 817, + "InteractionType": "Interact" + } + ] + }, { "Sequence": 255, "Steps": [ @@ -30,12 +77,7 @@ "TerritoryId": 817, "InteractionType": "WalkTo", "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ - - - - ] + "Fly": true }, { "DataId": 1032643, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3830_Safety Is No Accident.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3830_Safety Is No Accident.json index 5b359ba6..8f3976ed 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3830_Safety Is No Accident.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3830_Safety Is No Accident.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -21,6 +20,22 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 817, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 29535, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 29561, + "ItemCount": 3 + } + ] + }, { "Position": { "X": 788.1569, @@ -30,12 +45,7 @@ "TerritoryId": 817, "InteractionType": "WalkTo", "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ - - - - ] + "Fly": true }, { "DataId": 1032643, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3831_One Fish, Two Fish, Bread Fish, Stew Fish.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3831_One Fish, Two Fish, Bread Fish, Stew Fish.json index 5b359ba6..f2761f62 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3831_One Fish, Two Fish, Bread Fish, Stew Fish.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3831_One Fish, Two Fish, Bread Fish, Stew Fish.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -21,6 +20,22 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 817, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 29536, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 29562, + "ItemCount": 3 + } + ] + }, { "Position": { "X": 788.1569, @@ -30,12 +45,7 @@ "TerritoryId": 817, "InteractionType": "WalkTo", "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ - - - - ] + "Fly": true }, { "DataId": 1032643, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3832_Serpent's Will Be Done.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3832_Serpent's Will Be Done.json index 5b359ba6..bd564434 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3832_Serpent's Will Be Done.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3832_Serpent's Will Be Done.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -18,6 +17,39 @@ } ] }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1032663, + "Position": { + "X": 793.97266, + "Y": -45.811764, + "Z": -188.03699 + }, + "TerritoryId": 817, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2010998, + "Position": { + "X": -677.0886, + "Y": 0.32037354, + "Z": 208.69751 + }, + "TerritoryId": 817, + "InteractionType": "Action", + "Action": "Peculiar Light", + "Fly": true + } + ] + }, { "Sequence": 255, "Steps": [ @@ -30,12 +62,7 @@ "TerritoryId": 817, "InteractionType": "WalkTo", "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ - - - - ] + "Fly": true }, { "DataId": 1032643, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3833_Qhoterl's Chronicles.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3833_Qhoterl's Chronicles.json index 5b359ba6..bdbb1696 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3833_Qhoterl's Chronicles.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Dailies/3833_Qhoterl's Chronicles.json @@ -30,12 +30,7 @@ "TerritoryId": 817, "InteractionType": "WalkTo", "AetheryteShortcut": "Rak'tika - Fanow", - "Fly": true, - "RequiredGatheredItems": [ - - - - ] + "Fly": true }, { "DataId": 1032643, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3794_The Stewards of Note.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3794_The Stewards of Note.json index e13c4ad3..9a9e070f 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3794_The Stewards of Note.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3794_The Stewards of Note.json @@ -91,6 +91,16 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 817, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "ItemId": 29512, + "ItemCount": 1 + } + ] + }, { "DataId": 1032724, "Position": { @@ -100,13 +110,7 @@ }, "TerritoryId": 817, "InteractionType": "CompleteQuest", - "Fly": true, - "RequiredGatheredItems": [ - { - "ItemId": 29512, - "ItemCount": 1 - } - ] + "Fly": true } ] } diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3795_Wisdom of the Night.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3795_Wisdom of the Night.json new file mode 100644 index 00000000..84db90fd --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3795_Wisdom of the Night.json @@ -0,0 +1,86 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032659, + "Position": { + "X": 802.79236, + "Y": -45.91779, + "Z": -218.58557 + }, + "TerritoryId": 817, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1032731, + "Position": { + "X": -28.732727, + "Y": -24.68478, + "Z": 318.28796 + }, + "TerritoryId": 817, + "InteractionType": "Interact", + "AetheryteShortcut": "Rak'tika - Slitherbough", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 817, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 29513, + "ItemCount": 1 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 29539, + "ItemCount": 1 + } + ] + }, + { + "DataId": 1032734, + "Position": { + "X": 802.6703, + "Y": -45.915627, + "Z": -214.70972 + }, + "TerritoryId": 817, + "InteractionType": "Interact", + "AetheryteShortcut": "Rak'tika - Fanow", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032659, + "Position": { + "X": 802.79236, + "Y": -45.91779, + "Z": -218.58557 + }, + "TerritoryId": 817, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3796_Delving Deeper.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3796_Delving Deeper.json new file mode 100644 index 00000000..be8eb6d4 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3796_Delving Deeper.json @@ -0,0 +1,100 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032735, + "Position": { + "X": 803.7993, + "Y": -45.924515, + "Z": -217.94464 + }, + "TerritoryId": 817, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1032659, + "Position": { + "X": 802.79236, + "Y": -45.91779, + "Z": -218.58557 + }, + "TerritoryId": 817, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1027716, + "Position": { + "X": 494.9873, + "Y": -6.555339, + "Z": -224.93329 + }, + "TerritoryId": 817, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Rak'tika - Fanow" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 817, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 29514, + "ItemCount": 1 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 29540, + "ItemCount": 1 + } + ] + }, + { + "DataId": 1032660, + "Position": { + "X": 804.4098, + "Y": -45.9255, + "Z": -216.41876 + }, + "TerritoryId": 817, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032659, + "Position": { + "X": 802.79236, + "Y": -45.91779, + "Z": -218.58557 + }, + "TerritoryId": 817, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3797_A Chilling Fate.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3797_A Chilling Fate.json new file mode 100644 index 00000000..4118fec3 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3797_A Chilling Fate.json @@ -0,0 +1,84 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032735, + "Position": { + "X": 803.7993, + "Y": -45.924515, + "Z": -217.94464 + }, + "TerritoryId": 817, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1032659, + "Position": { + "X": 802.79236, + "Y": -45.91779, + "Z": -218.58557 + }, + "TerritoryId": 817, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 817, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 29515, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 29541, + "ItemCount": 3 + } + ] + }, + { + "DataId": 1032862, + "Position": { + "X": 777.06555, + "Y": -45.76794, + "Z": -209.21649 + }, + "TerritoryId": 817, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Rak'tika - Fanow" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032659, + "Position": { + "X": 802.79236, + "Y": -45.91779, + "Z": -218.58557 + }, + "TerritoryId": 817, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3798_What Ails the Forest.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3798_What Ails the Forest.json new file mode 100644 index 00000000..e7e98bf5 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3798_What Ails the Forest.json @@ -0,0 +1,131 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032735, + "Position": { + "X": 803.7993, + "Y": -45.924515, + "Z": -217.94464 + }, + "TerritoryId": 817, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1032659, + "Position": { + "X": 802.79236, + "Y": -45.91779, + "Z": -218.58557 + }, + "TerritoryId": 817, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1027716, + "Position": { + "X": 494.9873, + "Y": -6.555339, + "Z": -224.93329 + }, + "TerritoryId": 817, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1032967, + "Position": { + "X": 774.8989, + "Y": -45.74954, + "Z": -205.52374 + }, + "TerritoryId": 817, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1032967, + "Position": { + "X": 774.8989, + "Y": -45.74954, + "Z": -205.52374 + }, + "TerritoryId": 817, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "TerritoryId": 817, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 29516, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 29542, + "ItemCount": 3 + } + ] + }, + { + "DataId": 1032967, + "Position": { + "X": 774.8989, + "Y": -45.74954, + "Z": -205.52374 + }, + "TerritoryId": 817, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Rak'tika - Fanow" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032660, + "Position": { + "X": 804.4098, + "Y": -45.9255, + "Z": -216.41876 + }, + "TerritoryId": 817, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3800_The First Stela Of Ronkan Might.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3800_The First Stela Of Ronkan Might.json new file mode 100644 index 00000000..96d75a52 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3800_The First Stela Of Ronkan Might.json @@ -0,0 +1,36 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032660, + "Position": { + "X": 804.4098, + "Y": -45.9255, + "Z": -216.41876 + }, + "TerritoryId": 817, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032660, + "Position": { + "X": 804.4098, + "Y": -45.9255, + "Z": -216.41876 + }, + "TerritoryId": 817, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3801_The First Stela Of Ronkan Benevolence.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3801_The First Stela Of Ronkan Benevolence.json new file mode 100644 index 00000000..9f606918 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3801_The First Stela Of Ronkan Benevolence.json @@ -0,0 +1,36 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032659, + "Position": { + "X": 802.79236, + "Y": -45.91779, + "Z": -218.58557 + }, + "TerritoryId": 817, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032659, + "Position": { + "X": 802.79236, + "Y": -45.91779, + "Z": -218.58557 + }, + "TerritoryId": 817, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3802_The Second Stela The Hunters and the Hunted.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3802_The Second Stela The Hunters and the Hunted.json new file mode 100644 index 00000000..96d75a52 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3802_The Second Stela The Hunters and the Hunted.json @@ -0,0 +1,36 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032660, + "Position": { + "X": 804.4098, + "Y": -45.9255, + "Z": -216.41876 + }, + "TerritoryId": 817, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032660, + "Position": { + "X": 804.4098, + "Y": -45.9255, + "Z": -216.41876 + }, + "TerritoryId": 817, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3803_The Second Stela Fast Friends.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3803_The Second Stela Fast Friends.json new file mode 100644 index 00000000..9f606918 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3803_The Second Stela Fast Friends.json @@ -0,0 +1,36 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032659, + "Position": { + "X": 802.79236, + "Y": -45.91779, + "Z": -218.58557 + }, + "TerritoryId": 817, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032659, + "Position": { + "X": 802.79236, + "Y": -45.91779, + "Z": -218.58557 + }, + "TerritoryId": 817, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3804_The Third Stela A Famine for Fishmen.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3804_The Third Stela A Famine for Fishmen.json new file mode 100644 index 00000000..96d75a52 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3804_The Third Stela A Famine for Fishmen.json @@ -0,0 +1,36 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032660, + "Position": { + "X": 804.4098, + "Y": -45.9255, + "Z": -216.41876 + }, + "TerritoryId": 817, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032660, + "Position": { + "X": 804.4098, + "Y": -45.9255, + "Z": -216.41876 + }, + "TerritoryId": 817, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3805_The Third Stela A Feast for Fishmen.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3805_The Third Stela A Feast for Fishmen.json new file mode 100644 index 00000000..9f606918 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Qitari/Story/3805_The Third Stela A Feast for Fishmen.json @@ -0,0 +1,36 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032659, + "Position": { + "X": 802.79236, + "Y": -45.91779, + "Z": -218.58557 + }, + "TerritoryId": 817, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032659, + "Position": { + "X": 802.79236, + "Y": -45.91779, + "Z": -218.58557 + }, + "TerritoryId": 817, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/AST/3222_Love, Astrologically.json b/QuestPaths/5.x - Shadowbringers/Class Quests/AST/3222_Love, Astrologically.json new file mode 100644 index 00000000..6396b352 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/AST/3222_Love, Astrologically.json @@ -0,0 +1,166 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1012222, + "Position": { + "X": 202.38037, + "Y": -5.3999662, + "Z": -58.9151 + }, + "TerritoryId": 419, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1021255, + "Position": { + "X": -0.35101318, + "Y": 11.965101, + "Z": 45.029297 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ishgard] Athenaeum Astrologicum", + "[Ishgard] The Last Vigil" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1028385, + "Position": { + "X": -48.17273, + "Y": 8.05915, + "Z": 15.762573 + }, + "TerritoryId": 418, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ishgard] The Last Vigil", + "[Ishgard] Aetheryte Plaza" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1028386, + "Position": { + "X": 199.17603, + "Y": -5.3999653, + "Z": -57.38922 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1028388, + "Position": { + "X": -4.989685, + "Y": 27.716667, + "Z": -130.9682 + }, + "TerritoryId": 419, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ishgard] Athenaeum Astrologicum", + "[Ishgard] Saint Reymanaud's Cathedral" + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "Position": { + "X": 243.48306, + "Y": 324.1, + "Z": -301.10074 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "$": "Y is slightly off the ground; else vnav would pathfind -through- the ground" + }, + { + "DataId": 1028390, + "Position": { + "X": 244.64783, + "Y": 323.99997, + "Z": -303.3036 + }, + "TerritoryId": 155, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1028390, + "Position": { + "X": 244.64783, + "Y": 323.99997, + "Z": -303.3036 + }, + "TerritoryId": 155, + "InteractionType": "Action", + "Action": "Aspected Benefic", + "DelaySecondsAtStart": 2 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1028391, + "Position": { + "X": 199.4812, + "Y": -5.3999653, + "Z": -60.44104 + }, + "TerritoryId": 419, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Athenaeum Astrologicum" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/BLM/3216_A Home for a Tome.json b/QuestPaths/5.x - Shadowbringers/Class Quests/BLM/3216_A Home for a Tome.json new file mode 100644 index 00000000..8a0d53ec --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/BLM/3216_A Home for a Tome.json @@ -0,0 +1,156 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006752, + "Position": { + "X": 87.5105, + "Y": 18, + "Z": 113.725464 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Weavers' Guild" + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1002279, + "Position": { + "X": -196.8872, + "Y": 18.459997, + "Z": 59.952637 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ul'dah] Weavers' Guild", + "[Ul'dah] Thaumaturges' Guild" + ], + "DialogueChoices": [ + { + "Prompt": "TEXT_LUCKBC007_03216_Q1_000_300", + "Type": "List", + "Answer": "TEXT_LUCKBC007_03216_A1_000_301" + }, + { + "Prompt": "TEXT_LUCKBC007_03216_Q1_000_100", + "Type": "List", + "Answer": "TEXT_LUCKBC007_03216_A1_000_101" + } + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1001708, + "Position": { + "X": -250.3548, + "Y": 18, + "Z": 80.88806 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1029866, + "Position": { + "X": -173.08313, + "Y": 17.999998, + "Z": 74.906494 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1029868, + "Position": { + "X": -89.21954, + "Y": 39.99999, + "Z": 106.98096 + }, + "StopDistance": 4, + "TerritoryId": 131, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1001708, + "Position": { + "X": -250.3548, + "Y": 18, + "Z": 80.88806 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ul'dah] Alchemists' Guild", + "[Ul'dah] Thaumaturges' Guild" + ] + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1001708, + "Position": { + "X": -250.3548, + "Y": 18, + "Z": 80.88806 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006752, + "Position": { + "X": 87.5105, + "Y": 18, + "Z": 113.725464 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Ul'dah] Thaumaturges' Guild", + "[Ul'dah] Weavers' Guild" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/BRD/3214_A Harmony from the Heavens.json b/QuestPaths/5.x - Shadowbringers/Class Quests/BRD/3214_A Harmony from the Heavens.json new file mode 100644 index 00000000..2e2cbff6 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/BRD/3214_A Harmony from the Heavens.json @@ -0,0 +1,140 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006750, + "Position": { + "X": 16.464417, + "Y": 6.750492, + "Z": -7.3396606 + }, + "TerritoryId": 153, + "InteractionType": "AcceptQuest", + "Fly": true, + "AetheryteShortcut": "South Shroud - Quarrymill", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030074, + "Position": { + "X": 192.58398, + "Y": -2.539064, + "Z": 73.59424 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Archers' Guild" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1030078, + "Position": { + "X": -180.34644, + "Y": -1.2285838, + "Z": 341.6953 + }, + "TerritoryId": 152, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "East Shroud - Hawthorne Hut" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2010182, + "Position": { + "X": -85.160645, + "Y": 6.0578003, + "Z": 398.64185 + }, + "TerritoryId": 152, + "InteractionType": "Say", + "ChatMessage": { + "Key": "TEXT_LUCKBC005_03214_SYSTEM_000_999" + }, + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2010183, + "Position": { + "X": 38.376343, + "Y": 7.2785034, + "Z": 430.28906 + }, + "TerritoryId": 152, + "InteractionType": "Say", + "ChatMessage": { + "Key": "TEXT_LUCKBC005_03214_SYSTEM_000_999" + }, + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1030081, + "Position": { + "X": 29.648315, + "Y": -18.800003, + "Z": 95.26196 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Airship Landing" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030081, + "Position": { + "X": 29.648315, + "Y": -18.800003, + "Z": 95.26196 + }, + "StopDistance": 7, + "TerritoryId": 132, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/DNC/3250_Gamboling for Gil.json b/QuestPaths/5.x - Shadowbringers/Class Quests/DNC/3250_Gamboling for Gil.json index 18979d0a..cc2dcd85 100644 --- a/QuestPaths/5.x - Shadowbringers/Class Quests/DNC/3250_Gamboling for Gil.json +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/DNC/3250_Gamboling for Gil.json @@ -13,7 +13,13 @@ "Z": 195.94104 }, "TerritoryId": 129, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/DNC/3251_A Soirée in the Sultanate.json b/QuestPaths/5.x - Shadowbringers/Class Quests/DNC/3251_A Soirée in the Sultanate.json index a9e4e18a..b733ba9f 100644 --- a/QuestPaths/5.x - Shadowbringers/Class Quests/DNC/3251_A Soirée in the Sultanate.json +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/DNC/3251_A Soirée in the Sultanate.json @@ -134,7 +134,9 @@ "TerritoryId": 141, "InteractionType": "Combat", "EnemySpawnType": "AutoOnEnterArea", - "KillEnemyDataIds": [10849], + "KillEnemyDataIds": [ + 10849 + ], "Fly": true } ] diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/DNC/3252_Dances with Duskwights.json b/QuestPaths/5.x - Shadowbringers/Class Quests/DNC/3252_Dances with Duskwights.json index 376c3afa..536643b0 100644 --- a/QuestPaths/5.x - Shadowbringers/Class Quests/DNC/3252_Dances with Duskwights.json +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/DNC/3252_Dances with Duskwights.json @@ -88,7 +88,9 @@ "TerritoryId": 153, "InteractionType": "Combat", "EnemySpawnType": "AutoOnEnterArea", - "KillEnemyDataIds": [10851] + "KillEnemyDataIds": [ + 10851 + ] } ] }, diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/DRG/3213_Gone but Not Forgiven.json b/QuestPaths/5.x - Shadowbringers/Class Quests/DRG/3213_Gone but Not Forgiven.json new file mode 100644 index 00000000..025d4400 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/DRG/3213_Gone but Not Forgiven.json @@ -0,0 +1,130 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": 215.65454, + "Y": 222.1, + "Z": 345.1806 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "$": "Alberic" + }, + { + "DataId": 1006748, + "Position": { + "X": 217.88354, + "Y": 222, + "Z": 345.3269 + }, + "TerritoryId": 155, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1029861, + "Position": { + "X": -753.78046, + "Y": 123.728714, + "Z": 206.43921 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "The Churning Mists - Zenith" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2009923, + "Position": { + "X": -114.0307, + "Y": 145.09802, + "Z": -553.2159 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1029862, + "Position": { + "X": -93.27844, + "Y": 137.46214, + "Z": -534.44727 + }, + "TerritoryId": 400, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1029863, + "Position": { + "X": 746.6697, + "Y": 69.99995, + "Z": 533.135 + }, + "TerritoryId": 621, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Lochs - Ala Mhigan Quarter" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 213.22748, + "Y": 222.08781, + "Z": 342.82468 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead" + }, + { + "DataId": 1006748, + "Position": { + "X": 217.88354, + "Y": 222, + "Z": 345.3269 + }, + "TerritoryId": 155, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/DRK/3221_Our Closure.json b/QuestPaths/5.x - Shadowbringers/Class Quests/DRK/3221_Our Closure.json new file mode 100644 index 00000000..ed7a4d15 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/DRK/3221_Our Closure.json @@ -0,0 +1,199 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1013969, + "Position": { + "X": 104.234375, + "Y": 14.999986, + "Z": 40.787354 + }, + "TerritoryId": 418, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] The Forgotten Knight" + ], + "DialogueChoices": [ + { + "Prompt": "TEXT_LUCKBC012_03221_Q1_000_002", + "Type": "List", + "Answer": "TEXT_LUCKBC012_03221_A1_000_003" + } + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2009976, + "Position": { + "X": 102.92212, + "Y": 15.915161, + "Z": 39.414062 + }, + "TerritoryId": 418, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1030087, + "Position": { + "X": -182.51324, + "Y": 2.0332975, + "Z": -5.56958 + }, + "TerritoryId": 418, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ishgard] The Forgotten Knight", + "[Ishgard] Skysteel Manufactory" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1030088, + "Position": { + "X": 104.93628, + "Y": 34.72381, + "Z": 10.208252 + }, + "TerritoryId": 418, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ishgard] Skysteel Manufactory", + "[Ishgard] The Forgotten Knight" + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1019486, + "Position": { + "X": -116.746826, + "Y": 0.6342248, + "Z": -55.832825 + }, + "TerritoryId": 635, + "InteractionType": "Interact", + "AetheryteShortcut": "Rhalgr's Reach", + "AethernetShortcut": [ + "[Rhalgr's Reach] Aetheryte Plaza", + "[Rhalgr's Reach] Western Rhalgr's Reach" + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1006215, + "Position": { + "X": -227.34424, + "Y": 26.16842, + "Z": -352.98694 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1030089, + "Position": { + "X": 433.31042, + "Y": 68.09681, + "Z": -184.2832 + }, + "TerritoryId": 135, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Tempest Gate (Lower La Noscea)" + ] + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 2009979, + "Position": { + "X": -95.10956, + "Y": 298.63428, + "Z": -212.54297 + }, + "TerritoryId": 155, + "InteractionType": "Say", + "ChatMessage": { + "Key": "TEXT_LUCKBC012_03221_SYSTEM_000_0160" + }, + "Fly": true, + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] The Gates of Judgement (Coerthas Central Highlands)" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1013969, + "Position": { + "X": 104.234375, + "Y": 14.999986, + "Z": 40.787354 + }, + "TerritoryId": 418, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] The Forgotten Knight" + ], + "DialogueChoices": [ + { + "Prompt": "TEXT_LUCKBC012_03221_Q3_000_192", + "Type": "List", + "Answer": "TEXT_LUCKBC012_03221_A3_000_193" + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/MCH/3220_Machinists for the Morrow.json b/QuestPaths/5.x - Shadowbringers/Class Quests/MCH/3220_Machinists for the Morrow.json new file mode 100644 index 00000000..43cf0fd6 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/MCH/3220_Machinists for the Morrow.json @@ -0,0 +1,147 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1014577, + "Position": { + "X": -154.31458, + "Y": 16.999992, + "Z": -53.3609 + }, + "TerritoryId": 418, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Skysteel Manufactory" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2009739, + "Position": { + "X": -116.44165, + "Y": 15.121643, + "Z": -53.574463 + }, + "TerritoryId": 418, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1014577, + "Position": { + "X": -154.31458, + "Y": 16.999992, + "Z": -53.3609 + }, + "TerritoryId": 418, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1014803, + "Position": { + "X": 484.39758, + "Y": 212.5841, + "Z": 724.2999 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "AetheryteShortcut": "Coerthas Western Highlands - Falcon's Nest" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2009740, + "Position": { + "X": 348.01245, + "Y": 158.34277, + "Z": 153.03271 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 2009741, + "Position": { + "X": 504.72266, + "Y": 121.62964, + "Z": 162.005 + }, + "TerritoryId": 397, + "InteractionType": "Combat", + "Fly": true, + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [10833] + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1028096, + "Position": { + "X": 343.00745, + "Y": 158.52606, + "Z": 152.75806 + }, + "TerritoryId": 397, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1014577, + "Position": { + "X": -154.31458, + "Y": 16.999992, + "Z": -53.3609 + }, + "TerritoryId": 418, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ishgard", + "AethernetShortcut": [ + "[Ishgard] Aetheryte Plaza", + "[Ishgard] Skysteel Manufactory" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/MNK/3211_A Monk's Legacy.json b/QuestPaths/5.x - Shadowbringers/Class Quests/MNK/3211_A Monk's Legacy.json new file mode 100644 index 00000000..d886dfaf --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/MNK/3211_A Monk's Legacy.json @@ -0,0 +1,138 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006749, + "Position": { + "X": -30.47229, + "Y": 13.599918, + "Z": 95.26196 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Goldsmiths' Guild" + ], + "SkipConditions": { + "AethernetShortcutIf": { + "InSameTerritory": true + }, + "AetheryteShortcutIf": { + "InTerritory": [130, 131] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1028409, + "Position": { + "X": 103.4104, + "Y": 118.31935, + "Z": -706.1417 + }, + "TerritoryId": 620, + "InteractionType": "Interact", + "AetheryteShortcut": "Peaks - Ala Gannha", + "Fly": true + }, + { + "DataId": 1028410, + "Position": { + "X": 38.010254, + "Y": 118.13663, + "Z": -750.57605 + }, + "TerritoryId": 620, + "InteractionType": "Interact", + "Mount": true + }, + { + "DataId": 1028408, + "Position": { + "X": 55.649536, + "Y": 118.16888, + "Z": -784.2069 + }, + "TerritoryId": 620, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1028411, + "Position": { + "X": -140.67297, + "Y": 27.29529, + "Z": -408.16364 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2009755, + "Position": { + "X": 64.86609, + "Y": -0.38153076, + "Z": -83.32953 + }, + "TerritoryId": 635, + "InteractionType": "Interact", + "AetheryteShortcut": "Rhalgr's Reach", + "AethernetShortcut": [ + "[Rhalgr's Reach] Aetheryte Plaza", + "[Rhalgr's Reach] Northeastern Rhalgr's Reach" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006749, + "Position": { + "X": -30.47229, + "Y": 13.599918, + "Z": 95.26196 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Goldsmiths' Guild" + ], + "SkipConditions": { + "AethernetShortcutIf": { + "InSameTerritory": true + }, + "AetheryteShortcutIf": { + "InTerritory": [130, 131] + } + } + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/NIN/3219_Oboro's Big Idea.json b/QuestPaths/5.x - Shadowbringers/Class Quests/NIN/3219_Oboro's Big Idea.json new file mode 100644 index 00000000..8ca27a67 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/NIN/3219_Oboro's Big Idea.json @@ -0,0 +1,197 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1010601, + "Position": { + "X": -14.755493, + "Y": 41.39178, + "Z": 258.13684 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "TargetTerritoryId": 137, + "AetheryteShortcut": "Eastern La Noscea - Wineport" + }, + { + "DataId": 1010139, + "Position": { + "X": -33.218933, + "Y": -24.674446, + "Z": 257.98413 + }, + "TerritoryId": 137, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030049, + "Position": { + "X": -349.50793, + "Y": 57.270435, + "Z": -393.0572 + }, + "TerritoryId": 180, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Outer La Noscea - Camp Overlook" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2010173, + "Position": { + "X": -310.0786, + "Y": 5.5999756, + "Z": -564.0803 + }, + "TerritoryId": 180, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": -302.34204, + "Y": 4.9819174, + "Z": -570.3643 + }, + "TerritoryId": 180, + "InteractionType": "WalkTo", + "Mount": true + }, + { + "Position": { + "X": -308.3169, + "Y": 5.7642717, + "Z": -571.4899 + }, + "TerritoryId": 180, + "InteractionType": "WalkTo" + }, + { + "DataId": 2010175, + "Position": { + "X": -302.72375, + "Y": 9.750427, + "Z": -578.02704 + }, + "TerritoryId": 180, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -306.7621, + "Y": 5.7733507, + "Z": -570.97736 + }, + "TerritoryId": 180, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": -302.3223, + "Y": 4.976821, + "Z": -570.7108 + }, + "TerritoryId": 180, + "InteractionType": "WalkTo" + }, + { + "DataId": 2010180, + "Position": { + "X": -349.50793, + "Y": 57.236572, + "Z": -393.0572 + }, + "TerritoryId": 180, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1010601, + "Position": { + "X": -14.755493, + "Y": 41.39178, + "Z": 258.13684 + }, + "TerritoryId": 137, + "InteractionType": "Interact", + "TargetTerritoryId": 137, + "AetheryteShortcut": "Eastern La Noscea - Wineport" + }, + { + "DataId": 1010139, + "Position": { + "X": -33.218933, + "Y": -24.674446, + "Z": 257.98413 + }, + "TerritoryId": 137, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 2010181, + "Position": { + "X": -77.28699, + "Y": 40.97046, + "Z": -138.78088 + }, + "TerritoryId": 128, + "InteractionType": "Interact", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Culinarians' Guild" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030053, + "Position": { + "X": -153.67358, + "Y": -129.4397, + "Z": 264.60657 + }, + "TerritoryId": 129, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/PLD/3210_Worth Fighting For.json b/QuestPaths/5.x - Shadowbringers/Class Quests/PLD/3210_Worth Fighting For.json new file mode 100644 index 00000000..4bef1f46 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/PLD/3210_Worth Fighting For.json @@ -0,0 +1,93 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006747, + "Position": { + "X": -20.828613, + "Y": 29.999964, + "Z": -2.4262085 + }, + "TerritoryId": 131, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] The Chamber of Rule" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InTerritory": [130, 131] + }, + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ul'dah] The Chamber of Rule", + "[Ul'dah] Gladiators' Guild" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1028092, + "Position": { + "X": 213.58044, + "Y": 54.47546, + "Z": 228.19861 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "Fly": true, + "AethernetShortcut": [ + "[Ul'dah] Gladiators' Guild", + "[Ul'dah] Gate of the Sultana (Western Thanalan)" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1001739, + "Position": { + "X": -94.529724, + "Y": 6.4999976, + "Z": 39.81079 + }, + "TerritoryId": 131, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Gladiators' Guild" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/RDM/3224_Succession of Steel.json b/QuestPaths/5.x - Shadowbringers/Class Quests/RDM/3224_Succession of Steel.json new file mode 100644 index 00000000..76f80ac8 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/RDM/3224_Succession of Steel.json @@ -0,0 +1,176 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1023610, + "Position": { + "X": 55.313843, + "Y": 20.397943, + "Z": -676.3562 + }, + "TerritoryId": 156, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Mor Dhona" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1028372, + "Position": { + "X": 599.23694, + "Y": 80.00001, + "Z": 623.07153 + }, + "TerritoryId": 621, + "InteractionType": "Interact", + "AetheryteShortcut": "Lochs - Ala Mhigan Quarter", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1028374, + "Position": { + "X": 274.76917, + "Y": 10.572342, + "Z": -543.05334 + }, + "TerritoryId": 621, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1028379, + "Position": { + "X": 81.49841, + "Y": 10, + "Z": -574.2123 + }, + "TerritoryId": 621, + "InteractionType": "Interact", + "Fly": true, + "DialogueChoices": [ + { + "Prompt": "TEXT_LUCKBC015_03224_Q1_000_100", + "Type": "List", + "Answer": "TEXT_LUCKBC015_03224_A1_000_101" + } + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1030849, + "Position": { + "X": 124.40674, + "Y": 10, + "Z": -515.58716 + }, + "TerritoryId": 621, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [10834, 10835], + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1028374, + "Position": { + "X": 274.76917, + "Y": 10.572342, + "Z": -543.05334 + }, + "TerritoryId": 621, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1028376, + "Position": { + "X": -790.7988, + "Y": 78.22368, + "Z": -699.5804 + }, + "TerritoryId": 621, + "InteractionType": "Interact", + "AetheryteShortcut": "Lochs - Porta Praetoria", + "Fly": true + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1028377, + "Position": { + "X": 51.346558, + "Y": 24.662476, + "Z": -787.9301 + }, + "TerritoryId": 621, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1028377, + "Position": { + "X": 51.346558, + "Y": 24.662476, + "Z": -787.9301 + }, + "TerritoryId": 621, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030677, + "Position": { + "X": 55.313843, + "Y": 20.397943, + "Z": -676.3562 + }, + "TerritoryId": 156, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Mor Dhona" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/SAM/3223_The Legend of Musosai.json b/QuestPaths/5.x - Shadowbringers/Class Quests/SAM/3223_The Legend of Musosai.json new file mode 100644 index 00000000..a063825e --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/SAM/3223_The Legend of Musosai.json @@ -0,0 +1,118 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1022184, + "Position": { + "X": 129.71692, + "Y": 15, + "Z": -157.61047 + }, + "TerritoryId": 628, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] Sekiseigumi Barracks" + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030622, + "Position": { + "X": 39.04773, + "Y": 8, + "Z": -119.76807 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Adventurers' Guild" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1030057, + "Position": { + "X": -218.15833, + "Y": 31.684015, + "Z": 380.51416 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "Fly": true, + "AethernetShortcut": [ + "[Ul'dah] Adventurers' Guild", + "[Ul'dah] Gate of the Sultana (Western Thanalan)" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1022189, + "Position": { + "X": -312.67267, + "Y": 33.089348, + "Z": 446.5553 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1030058, + "Position": { + "X": -301.04523, + "Y": 13.9837475, + "Z": 292.8053 + }, + "TerritoryId": 140, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030622, + "Position": { + "X": 39.04773, + "Y": 8, + "Z": -119.76807 + }, + "TerritoryId": 130, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Adventurers' Guild" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/SCH/3218_True Beauty.json b/QuestPaths/5.x - Shadowbringers/Class Quests/SCH/3218_True Beauty.json new file mode 100644 index 00000000..9ad1458e --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/SCH/3218_True Beauty.json @@ -0,0 +1,209 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006757, + "Position": { + "X": -4.4709473, + "Y": 44.999886, + "Z": -250.56848 + }, + "TerritoryId": 128, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Marauders' Guild" + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 207.67957, + "Y": -3.224134, + "Z": 42.683086 + }, + "TerritoryId": 139, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Upper La Noscea - Camp Bronze Lake", + "Fly": true + }, + { + "DataId": 1043098, + "Position": { + "X": 206.0426, + "Y": -3.111818, + "Z": 41.94702 + }, + "TerritoryId": 139, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2009742, + "Position": { + "X": 69.565796, + "Y": 17.807251, + "Z": 234.88208 + }, + "TerritoryId": 153, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [10832], + "AetheryteShortcut": "South Shroud - Camp Tranquil", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 207.67957, + "Y": -3.224134, + "Z": 42.683086 + }, + "TerritoryId": 139, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Upper La Noscea - Camp Bronze Lake", + "Fly": true + }, + { + "DataId": 1043098, + "Position": { + "X": 206.0426, + "Y": -3.111818, + "Z": 41.94702 + }, + "TerritoryId": 139, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1031208, + "Position": { + "X": 206.80542, + "Y": -3.065022, + "Z": 43.83911 + }, + "TerritoryId": 139, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "Position": { + "X": -277.67575, + "Y": 64.18076, + "Z": -163.79219 + }, + "TerritoryId": 180, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Outer La Noscea - Camp Overlook", + "Fly": true + }, + { + "DataId": 1028097, + "Position": { + "X": -276.56976, + "Y": 64.43479, + "Z": -161.18109 + }, + "TerritoryId": 180, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "Position": { + "X": 207.67957, + "Y": -3.224134, + "Z": 42.683086 + }, + "TerritoryId": 139, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Upper La Noscea - Camp Bronze Lake", + "Fly": true + }, + { + "DataId": 1043098, + "Position": { + "X": 206.0426, + "Y": -3.111818, + "Z": 41.94702 + }, + "TerritoryId": 139, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1031208, + "Position": { + "X": 206.80542, + "Y": -3.065022, + "Z": 43.83911 + }, + "TerritoryId": 139, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1028373, + "Position": { + "X": 207.53784, + "Y": -3.049824, + "Z": 43.22876 + }, + "TerritoryId": 139, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1043098, + "Position": { + "X": 206.0426, + "Y": -3.111818, + "Z": 41.94702 + }, + "TerritoryId": 139, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/SMN/4033_To Be Second Best.json b/QuestPaths/5.x - Shadowbringers/Class Quests/SMN/4033_To Be Second Best.json new file mode 100644 index 00000000..d7b5e0de --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/SMN/4033_To Be Second Best.json @@ -0,0 +1,111 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006756, + "Position": { + "X": -16.891846, + "Y": 10.17425, + "Z": -246.87573 + }, + "TerritoryId": 133, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Mih Khetto's Amphitheatre" + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1028406, + "Position": { + "X": 43.289795, + "Y": -8, + "Z": 108.62891 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Gridania] Mih Khetto's Amphitheatre", + "[Gridania] Aetheryte Plaza" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2011356, + "Position": { + "X": 58.304688, + "Y": -0.015319824, + "Z": 84.27551 + }, + "TerritoryId": 635, + "InteractionType": "Interact", + "AetheryteShortcut": "Rhalgr's Reach" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1024112, + "Position": { + "X": 796.933, + "Y": 69.9999, + "Z": 634.76 + }, + "TerritoryId": 621, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1028406, + "Position": { + "X": 43.289795, + "Y": -8, + "Z": 108.62891 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006756, + "Position": { + "X": -16.891846, + "Y": 10.17425, + "Z": -246.87573 + }, + "TerritoryId": 133, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Mih Khetto's Amphitheatre" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/WAR/3212_Once, Twice, Three Times a Warrior.json b/QuestPaths/5.x - Shadowbringers/Class Quests/WAR/3212_Once, Twice, Three Times a Warrior.json new file mode 100644 index 00000000..5d81d86e --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/WAR/3212_Once, Twice, Three Times a Warrior.json @@ -0,0 +1,208 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1006746, + "Position": { + "X": 460.65454, + "Y": 8.309061, + "Z": 74.47925 + }, + "TerritoryId": 137, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Eastern La Noscea - Costa Del Sol", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "Fly": true, + "DialogueChoices": [ + { + "Prompt": "TEXT_LUCKBC003_03212_Q1_000_000", + "Type": "List", + "Answer": "TEXT_LUCKBC003_03212_A1_000_001" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1023885, + "Position": { + "X": 217.30359, + "Y": 7.999984, + "Z": 686.427 + }, + "TerritoryId": 135, + "InteractionType": "Interact", + "AetheryteShortcut": "Lower La Noscea - Moraby Drydocks" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 226.71358, + "Y": 8.000019, + "Z": 671.0062 + }, + "TerritoryId": 135, + "InteractionType": "WalkTo", + "Mount": true + }, + { + "DataId": 1030042, + "Position": { + "X": 425.10107, + "Y": 61.22168, + "Z": -42.404846 + }, + "TerritoryId": 135, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2010149, + "Position": { + "X": 345.3573, + "Y": 58.457275, + "Z": -63.523376 + }, + "TerritoryId": 135, + "InteractionType": "Action", + "Action": "Heavy Swing", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2010150, + "Position": { + "X": 369.43604, + "Y": 64.59143, + "Z": -88.85327 + }, + "TerritoryId": 135, + "InteractionType": "Action", + "Action": "Heavy Swing", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2010151, + "Position": { + "X": 360.95215, + "Y": 69.90149, + "Z": -119.06616 + }, + "TerritoryId": 135, + "InteractionType": "Action", + "Action": "Heavy Swing", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1030042, + "Position": { + "X": 425.10107, + "Y": 61.22168, + "Z": -42.404846 + }, + "TerritoryId": 135, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1030044, + "Position": { + "X": 435.8739, + "Y": 66.317635, + "Z": -276.56976 + }, + "TerritoryId": 135, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1030046, + "Position": { + "X": 433.9818, + "Y": 66.317635, + "Z": -277.48535 + }, + "TerritoryId": 135, + "InteractionType": "Action", + "Action": "Heavy Swing", + "DelaySecondsAtStart": 2 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1006746, + "Position": { + "X": 460.65454, + "Y": 8.309061, + "Z": 74.47925 + }, + "TerritoryId": 137, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Eastern La Noscea - Costa Del Sol", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/WHM/3215_Whence the Healing Springs.json b/QuestPaths/5.x - Shadowbringers/Class Quests/WHM/3215_Whence the Healing Springs.json new file mode 100644 index 00000000..791de71d --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/WHM/3215_Whence the Healing Springs.json @@ -0,0 +1,129 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": -137.7745, + "Y": 10.010047, + "Z": 278.79453 + }, + "TerritoryId": 153, + "InteractionType": "WalkTo", + "AetheryteShortcut": "South Shroud - Camp Tranquil", + "Fly": true + }, + { + "DataId": 1006751, + "Position": { + "X": -139.45221, + "Y": 8.712891, + "Z": 281.69678 + }, + "StopDistance": 4, + "TerritoryId": 153, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1028418, + "Position": { + "X": -242.26752, + "Y": -4, + "Z": 1.2054443 + }, + "TerritoryId": 133, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Conjurers' Guild" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1028419, + "Position": { + "X": -19.058533, + "Y": -32.58833, + "Z": 307.1488 + }, + "TerritoryId": 148, + "InteractionType": "Interact", + "AetheryteShortcut": "Central Shroud - Bentbranch Meadows", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1028423, + "Position": { + "X": -62.974, + "Y": -36.839226, + "Z": 473.3806 + }, + "TerritoryId": 148, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1028424, + "Position": { + "X": -19.85205, + "Y": -34.365856, + "Z": 416.76965 + }, + "StopDistance": 7, + "TerritoryId": 148, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": -137.7745, + "Y": 10.010047, + "Z": 278.79453 + }, + "TerritoryId": 153, + "InteractionType": "WalkTo", + "AetheryteShortcut": "South Shroud - Camp Tranquil", + "Fly": true + }, + { + "DataId": 1006751, + "Position": { + "X": -139.45221, + "Y": 8.712891, + "Z": 281.69678 + }, + "StopDistance": 4, + "TerritoryId": 153, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Custom Deliveries/Charlemend/S7_Charlemend.json b/QuestPaths/5.x - Shadowbringers/Custom Deliveries/Charlemend/S7_Charlemend.json index 02581a49..18b2d648 100644 --- a/QuestPaths/5.x - Shadowbringers/Custom Deliveries/Charlemend/S7_Charlemend.json +++ b/QuestPaths/5.x - Shadowbringers/Custom Deliveries/Charlemend/S7_Charlemend.json @@ -5,6 +5,11 @@ { "Sequence": 0, "Steps": [ + { + "TerritoryId": 886, + "InteractionType": "Gather", + "ItemsToGather": [] + }, { "TerritoryId": 886, "InteractionType": "None", diff --git a/QuestPaths/5.x - Shadowbringers/Custom Deliveries/Ehll Tou/S6_Ehll Tou.json b/QuestPaths/5.x - Shadowbringers/Custom Deliveries/Ehll Tou/S6_Ehll Tou.json index 70a15091..ec41fc8c 100644 --- a/QuestPaths/5.x - Shadowbringers/Custom Deliveries/Ehll Tou/S6_Ehll Tou.json +++ b/QuestPaths/5.x - Shadowbringers/Custom Deliveries/Ehll Tou/S6_Ehll Tou.json @@ -5,6 +5,11 @@ { "Sequence": 0, "Steps": [ + { + "TerritoryId": 886, + "InteractionType": "Gather", + "ItemsToGather": [] + }, { "TerritoryId": 886, "InteractionType": "None", diff --git a/QuestPaths/5.x - Shadowbringers/Custom Deliveries/Kai-Shirr/S5_Kai-Shirr.json b/QuestPaths/5.x - Shadowbringers/Custom Deliveries/Kai-Shirr/S5_Kai-Shirr.json index 325c08cd..00702053 100644 --- a/QuestPaths/5.x - Shadowbringers/Custom Deliveries/Kai-Shirr/S5_Kai-Shirr.json +++ b/QuestPaths/5.x - Shadowbringers/Custom Deliveries/Kai-Shirr/S5_Kai-Shirr.json @@ -5,6 +5,11 @@ { "Sequence": 0, "Steps": [ + { + "TerritoryId": 820, + "InteractionType": "Gather", + "ItemsToGather": [] + }, { "DataId": 1031801, "Position": { @@ -14,7 +19,6 @@ }, "TerritoryId": 820, "InteractionType": "Interact", - "RequiredGatheredItems": [], "AetheryteShortcut": "Eulmore", "DialogueChoices": [ { diff --git a/QuestPaths/5.x - Shadowbringers/Leves/MIN/L1540_Barmy for Ballistas.json b/QuestPaths/5.x - Shadowbringers/Leves/MIN/L1540_Barmy for Ballistas.json new file mode 100644 index 00000000..48631931 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Leves/MIN/L1540_Barmy for Ballistas.json @@ -0,0 +1,38 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -213.94563, + "Y": 84.02199, + "Z": 43.544315 + }, + "TerritoryId": 814, + "InteractionType": "InitiateLeve", + "AetheryteShortcut": "Kholusia - Wright", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "TerritoryId": 814, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "ItemId": 2002785, + "AlternativeItemId": 2002786, + "ItemCount": 999 + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/A1-Crystarium 1/3279_The Syrcus Trench.json b/QuestPaths/5.x - Shadowbringers/MSQ/A1-Crystarium 1/3279_The Syrcus Trench.json index 61515c17..456f753b 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/A1-Crystarium 1/3279_The Syrcus Trench.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/A1-Crystarium 1/3279_The Syrcus Trench.json @@ -104,7 +104,7 @@ }, "TerritoryId": 877, "InteractionType": "WalkTo", - "Mount": false + "RestartNavigationIfCancelled": false } ] }, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3283_A Still Tide.json b/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3283_A Still Tide.json index e5761913..d83e144c 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3283_A Still Tide.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3283_A Still Tide.json @@ -23,9 +23,9 @@ "Steps": [ { "Position": { - "X": 643.7624, - "Y": 0.35477543, - "Z": 541.9913 + "X": 639.3296, + "Y": 0.52189386, + "Z": 533.5061 }, "TerritoryId": 814, "InteractionType": "WalkTo" diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3284_Open Arms, Closed Gate.json b/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3284_Open Arms, Closed Gate.json index ced10209..9bb25b11 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3284_Open Arms, Closed Gate.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3284_Open Arms, Closed Gate.json @@ -35,6 +35,21 @@ }, { "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 338.49463, + "Y": 31.93622, + "Z": 203.53125 + }, + "StopDistance": 1, + "TerritoryId": 814, + "InteractionType": "WalkTo" + } + ] + }, + { + "Sequence": 3, "Steps": [ { "Position": { @@ -48,8 +63,7 @@ "EnemySpawnType": "AutoOnEnterArea", "KillEnemyDataIds": [ 10859 - ], - "Comment": "TODO Either this step is incorrect OR the next one is missing" + ] } ] }, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3285_A Fickle Existence.json b/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3285_A Fickle Existence.json index d70949f9..78b6e3ca 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3285_A Fickle Existence.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3285_A Fickle Existence.json @@ -48,7 +48,7 @@ "Z": 656.9772 }, "TerritoryId": 814, - "InteractionType": "Instruction", + "InteractionType": "Snipe", "Comment": "Click the guy in front of (or near) the light house stairs" } ] diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3286_City of Final Pleasures.json b/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3286_City of Final Pleasures.json index fecd56c3..ed00acad 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3286_City of Final Pleasures.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3286_City of Final Pleasures.json @@ -20,6 +20,28 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1027452, + "Position": { + "X": -310.62793, + "Y": 19.405178, + "Z": 405.2948 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3360 + }, + { + "DataId": 1030763, + "Position": { + "X": -306.2334, + "Y": 20.956566, + "Z": 358.41907 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3371 + }, { "DataId": 2009964, "Position": { @@ -140,10 +162,11 @@ "Y": 6, "Z": 33.17366 }, - "StopDistance": 5, + "StopDistance": 0.25, "TerritoryId": 820, "InteractionType": "UseItem", - "ItemId": 2002575 + "ItemId": 2002575, + "DelaySecondsAtStart": 3 } ] }, @@ -197,7 +220,8 @@ }, "TerritoryId": 820, "InteractionType": "Interact", - "TargetTerritoryId": 820 + "TargetTerritoryId": 820, + "Sprint": true }, { "DataId": 1029830, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3288_A Taste of Honey.json b/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3288_A Taste of Honey.json index fa499ae3..fe86189e 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3288_A Taste of Honey.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3288_A Taste of Honey.json @@ -43,13 +43,22 @@ "Z": -70.08472 }, "TerritoryId": 820, - "InteractionType": "Instruction", - "Comment": "Win first game", + "InteractionType": "Interact", "DialogueChoices": [ { "Type": "List", "Prompt": "TEXT_LUCKMA207_03288_Q1_000_041", "Answer": "TEXT_LUCKMA207_03288_A1_000_042" + }, + { + "Type": "List", + "Prompt": "TEXT_LUCKMA207_03288_Q2_000_052", + "Answer": "TEXT_LUCKMA207_03288_A2_000_054" + }, + { + "Type": "YesNo", + "Prompt": "TEXT_LUCKMA207_03288_TISTABIE_000_060", + "Yes": true } ] } @@ -66,13 +75,22 @@ "Z": -70.08472 }, "TerritoryId": 820, - "InteractionType": "Instruction", - "Comment": "Win second game", + "InteractionType": "Interact", "DialogueChoices": [ { "Type": "List", "Prompt": "TEXT_LUCKMA207_03288_Q1_000_041", "Answer": "TEXT_LUCKMA207_03288_A1_000_042" + }, + { + "Type": "List", + "Prompt": "TEXT_LUCKMA207_03288_Q2_000_052", + "Answer": "TEXT_LUCKMA207_03288_A2_000_054" + }, + { + "Type": "YesNo", + "Prompt": "TEXT_LUCKMA207_03288_TISTABIE_000_060", + "Yes": true } ] } diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3289_A Blessed Instrument.json b/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3289_A Blessed Instrument.json index bf4ae094..94f2bca1 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3289_A Blessed Instrument.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/A2-Kholusia 1/3289_A Blessed Instrument.json @@ -62,7 +62,7 @@ { "TerritoryId": 820, "InteractionType": "AttuneAethernetShard", - "AethernetShard": "[Eulmore] Nightsoil Pots", + "AethernetShard": "[Eulmore] Southeast Derelicts", "AethernetShortcut": [ "[Eulmore] The Mainstay", "[Eulmore] The Glory Gate" @@ -83,6 +83,11 @@ { "Sequence": 3, "Steps": [ + { + "TerritoryId": 820, + "InteractionType": "AttuneAethernetShard", + "AethernetShard": "[Eulmore] Nightsoil Pots" + }, { "DataId": 1029838, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/A3-Amh Araeng 1/3292_City of the Mord.json b/QuestPaths/5.x - Shadowbringers/MSQ/A3-Amh Araeng 1/3292_City of the Mord.json index ded86bd5..813814f3 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/A3-Amh Araeng 1/3292_City of the Mord.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/A3-Amh Araeng 1/3292_City of the Mord.json @@ -48,7 +48,7 @@ "Z": -186.14484 }, "TerritoryId": 815, - "InteractionType": "Instruction", + "InteractionType": "Snipe", "Comment": "Click all four foods" } ] diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/A3-Amh Araeng 1/3294_A Desert Crossing.json b/QuestPaths/5.x - Shadowbringers/MSQ/A3-Amh Araeng 1/3294_A Desert Crossing.json index e362a1ed..ba61712a 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/A3-Amh Araeng 1/3294_A Desert Crossing.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/A3-Amh Araeng 1/3294_A Desert Crossing.json @@ -20,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1027872, + "Position": { + "X": 268.4519, + "Y": 4.0296993, + "Z": -144.1825 + }, + "TerritoryId": 815, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3375 + }, { "DataId": 1030606, "Position": { @@ -28,7 +39,8 @@ "Z": -117.93707 }, "TerritoryId": 815, - "InteractionType": "Interact" + "InteractionType": "Interact", + "AetheryteShortcut": "Amh Araeng - Mord Souq" } ] }, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/A3-Amh Araeng 1/3297_A Purchase of Fruit.json b/QuestPaths/5.x - Shadowbringers/MSQ/A3-Amh Araeng 1/3297_A Purchase of Fruit.json index f872b922..53c877c9 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/A3-Amh Araeng 1/3297_A Purchase of Fruit.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/A3-Amh Araeng 1/3297_A Purchase of Fruit.json @@ -51,6 +51,15 @@ { "Sequence": 3, "Steps": [ + { + "Position": { + "X": 362.283, + "Y": -27.966003, + "Z": 304.85144 + }, + "TerritoryId": 815, + "InteractionType": "WalkTo" + }, { "DataId": 1030386, "Position": { @@ -58,6 +67,7 @@ "Y": -27.966003, "Z": 301.2893 }, + "StopDistance": 5, "TerritoryId": 815, "InteractionType": "Interact" } diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/A4-Crystarium 2/3300_The Lightwardens.json b/QuestPaths/5.x - Shadowbringers/MSQ/A4-Crystarium 2/3300_The Lightwardens.json index 2ad4c858..d4eef79d 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/A4-Crystarium 2/3300_The Lightwardens.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/A4-Crystarium 2/3300_The Lightwardens.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 837 - ], "QuestSequence": [ { "Sequence": 0, @@ -85,6 +82,15 @@ "InteractionType": "AttuneAetheryte", "Aetheryte": "Lakeland - Fort Jobb" }, + { + "Position": { + "X": 601.42426, + "Y": 23.210327, + "Z": -223.36815 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo" + }, { "DataId": 2010028, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3302_An Unwelcome Guest.json b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3302_An Unwelcome Guest.json index b5a421bd..6c053aeb 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3302_An Unwelcome Guest.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3302_An Unwelcome Guest.json @@ -12,7 +12,6 @@ "Y": 1.7160122, "Z": 249.83594 }, - "StopDistance": 7, "TerritoryId": 819, "InteractionType": "AcceptQuest" } @@ -21,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1027948, + "Position": { + "X": 40.42102, + "Y": 2.232896, + "Z": 261.49377 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3380 + }, { "DataId": 1027230, "Position": { @@ -30,11 +40,17 @@ }, "TerritoryId": 819, "InteractionType": "Interact", + "AetheryaateShortcut": "Crystarium", "AethernetShortcut": [ "[Crystarium] The Pendants", "[Crystarium] The Dossal Gate" ], - "TargetTerritoryId": 844 + "TargetTerritoryId": 844, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3305_The Oracle of Light.json b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3305_The Oracle of Light.json index 5aeffbc0..695679a7 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3305_The Oracle of Light.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3305_The Oracle of Light.json @@ -1,10 +1,6 @@ - -{ +{ "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 861 - ], "QuestSequence": [ { "Sequence": 0, @@ -165,6 +161,39 @@ { "Sequence": 4, "Steps": [ + { + "DataId": 1031212, + "Position": { + "X": -673.0907, + "Y": 51.157936, + "Z": -219.50104 + }, + "TerritoryId": 813, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3385 + }, + { + "DataId": 1027382, + "Position": { + "X": -765.92664, + "Y": 61.720478, + "Z": -304.1886 + }, + "TerritoryId": 813, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3384 + }, + { + "DataId": 1027419, + "Position": { + "X": -700.7401, + "Y": 61.993748, + "Z": -353.62787 + }, + "TerritoryId": 813, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3386 + }, { "Position": { "X": -724.9727, @@ -178,7 +207,8 @@ "Flying": "Unlocked" } }, - "Comment": "Tower Bottom" + "Comment": "Tower Bottom", + "AetheryteShortcut": "Lakeland - Ostall Imperative" }, { "Position": { @@ -347,7 +377,8 @@ "StepIf": { "Flying": "Locked" } - } + }, + "Fly": true }, { "DataId": 1028955, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3307_Sul Uin's Request.json b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3307_Sul Uin's Request.json index b4801eed..9c45180c 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3307_Sul Uin's Request.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3307_Sul Uin's Request.json @@ -20,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1030266, + "Position": { + "X": -367.66614, + "Y": 66.863594, + "Z": 557.1526 + }, + "TerritoryId": 816, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3395 + }, { "Position": { "X": -359.70227, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3310_Unto the Truth.json b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3310_Unto the Truth.json index 2f4410b7..bfc0517a 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3310_Unto the Truth.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3310_Unto the Truth.json @@ -49,7 +49,8 @@ "InteractionType": "Say", "ChatMessage": { "Key": "TEXT_LUCKMB109_03310_SYSTEM_000_060" - } + }, + "DelaySecondsAtStart": 6 } ] }, @@ -67,7 +68,8 @@ "InteractionType": "Say", "ChatMessage": { "Key": "TEXT_LUCKMB109_03310_SYSTEM_000_070" - } + }, + "DelaySecondsAtStart": 8 } ] }, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3311_Courting Cooperation.json b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3311_Courting Cooperation.json index 1e71b76d..dc7d4c4f 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3311_Courting Cooperation.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3311_Courting Cooperation.json @@ -28,6 +28,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1030618, + "Position": { + "X": -613.39746, + "Y": 36.54754, + "Z": -215.41168 + }, + "TerritoryId": 816, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3398 + }, { "Position": { "X": -629.64935, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3312_The Key to the Castle.json b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3312_The Key to the Castle.json index dacfa4d5..8f5193b0 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3312_The Key to the Castle.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3312_The Key to the Castle.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 821 - ], "QuestSequence": [ { "Sequence": 0, @@ -23,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1030838, + "Position": { + "X": -285.90833, + "Y": 40.324036, + "Z": 444.41882 + }, + "TerritoryId": 816, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3404 + }, { "DataId": 2009828, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3315_Spore Sweeper.json b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3315_Spore Sweeper.json index 99929255..56ceb583 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3315_Spore Sweeper.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3315_Spore Sweeper.json @@ -106,7 +106,9 @@ "Z": -860.6854 }, "TerritoryId": 816, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "DisableNavmesh": true, + "Mount": true }, { "DataId": 2009832, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3319_Memento of a Friend.json b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3319_Memento of a Friend.json index 8e86fac8..7d94ca84 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3319_Memento of a Friend.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3319_Memento of a Friend.json @@ -21,6 +21,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1027695, + "Position": { + "X": 441.64185, + "Y": 89.80711, + "Z": -653.43713 + }, + "TerritoryId": 816, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3427 + }, { "Position": { "X": 57.868374, @@ -28,8 +39,7 @@ "Z": -431.17603 }, "TerritoryId": 816, - "InteractionType": "Dive", - "Comment": "TODO: Verify diving works here" + "InteractionType": "Dive" }, { "DataId": 2009837, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3320_Acht-la Ormh Inn.json b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3320_Acht-la Ormh Inn.json index 9343449a..28fb3a34 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3320_Acht-la Ormh Inn.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/B-Il Mheg/3320_Acht-la Ormh Inn.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 845 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3323_A Little Faith.json b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3323_A Little Faith.json index c33dfe69..b5c2d0d6 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3323_A Little Faith.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3323_A Little Faith.json @@ -40,6 +40,21 @@ } } }, + { + "Position": { + "X": 731.32855, + "Y": 13.078317, + "Z": -147.50694 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "DisableNavmesh": true, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, { "Position": { "X": 731.32855, @@ -49,7 +64,11 @@ "TerritoryId": 813, "InteractionType": "WalkTo", "Fly": true, - "DisableNavmesh": true + "SkipConditions": { + "StepIf": { + "Flying": "Locked" + } + } }, { "Position": { @@ -85,7 +104,7 @@ "Z": -92.97333 }, "TerritoryId": 813, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Snipe", "Comment": "Tablet is on the right middle shelf of the table" } ] diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3327_Lost but Not Forgotten.json b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3327_Lost but Not Forgotten.json index 0fb8e7cb..3b4713ba 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3327_Lost but Not Forgotten.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3327_Lost but Not Forgotten.json @@ -20,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1029023, + "Position": { + "X": -131.36493, + "Y": -16.477911, + "Z": 316.3042 + }, + "TerritoryId": 817, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3444 + }, { "DataId": 2009866, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3329_Stirring Up Trouble.json b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3329_Stirring Up Trouble.json index 4682c425..32618958 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3329_Stirring Up Trouble.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3329_Stirring Up Trouble.json @@ -36,6 +36,15 @@ { "Sequence": 2, "Steps": [ + { + "Position": { + "X": -138.85619, + "Y": -3.036951, + "Z": 54.482983 + }, + "TerritoryId": 817, + "InteractionType": "WalkTo" + }, { "DataId": 2010066, "Position": { @@ -45,7 +54,8 @@ }, "TerritoryId": 817, "InteractionType": "AttuneAetherCurrent", - "AetherCurrentId": 2818285 + "AetherCurrentId": 2818285, + "DisableNavmesh": true }, { "DataId": 1029214, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3330_A Beeautiful Plan.json b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3330_A Beeautiful Plan.json index 960e9293..51a28c18 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3330_A Beeautiful Plan.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3330_A Beeautiful Plan.json @@ -84,7 +84,7 @@ "Z": -359.4873 }, "TerritoryId": 817, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Snipe", "Comment": "Click murals" } ] diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3332_Put to the Proof.json b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3332_Put to the Proof.json index d586e2ea..52339cbf 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3332_Put to the Proof.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3332_Put to the Proof.json @@ -21,6 +21,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1030747, + "Position": { + "X": -81.28485, + "Y": -19.061882, + "Z": 307.20984 + }, + "TerritoryId": 817, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3656 + }, { "DataId": 1029223, "Position": { @@ -149,7 +160,8 @@ "TerritoryId": 817, "InteractionType": "WalkTo", "Fly": true, - "DisableNavmesh": true + "DisableNavmesh": true, + "Mount": true }, { "Position": { @@ -169,7 +181,8 @@ }, "TerritoryId": 817, "InteractionType": "WalkTo", - "DisableNavmesh": true + "DisableNavmesh": true, + "RestartNavigationIfCancelled": false }, { "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3333_Into the Wood.json b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3333_Into the Wood.json index e94f1f50..0caad6c3 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3333_Into the Wood.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3333_Into the Wood.json @@ -44,7 +44,8 @@ }, "TerritoryId": 817, "InteractionType": "WalkTo", - "DisableNavmesh": true + "DisableNavmesh": true, + "Mount": true }, { "Position": { @@ -93,6 +94,15 @@ { "Sequence": 255, "Steps": [ + { + "Position": { + "X": 434.4612, + "Y": 4.434532, + "Z": -7.1864815 + }, + "TerritoryId": 817, + "InteractionType": "WalkTo" + }, { "DataId": 1029228, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3335_Look to the Stars.json b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3335_Look to the Stars.json index 668c8fee..2272c5ee 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3335_Look to the Stars.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3335_Look to the Stars.json @@ -20,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1027736, + "Position": { + "X": 396.38354, + "Y": 20.422523, + "Z": -179.12573 + }, + "TerritoryId": 817, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3467 + }, { "DataId": 1029238, "Position": { @@ -197,7 +208,6 @@ "TerritoryId": 817, "InteractionType": "Jump", "Comment": "Northwest", - "DisableNavmesh": true, "JumpDestination": { "Position": { "X": 123.35363, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3340_The Burden of Knowledge.json b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3340_The Burden of Knowledge.json index b90541c6..075dff0c 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3340_The Burden of Knowledge.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3340_The Burden of Knowledge.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 823 - ], "QuestSequence": [ { "Sequence": 0, @@ -24,6 +21,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1027716, + "Position": { + "X": 494.9873, + "Y": -6.555339, + "Z": -224.93329 + }, + "TerritoryId": 817, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3478 + }, { "DataId": 2010073, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3607_Word from On High.json b/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3607_Word from On High.json index fabaa0fb..ab8dcdc0 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3607_Word from On High.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3607_Word from On High.json @@ -81,6 +81,16 @@ { "Sequence": 255, "Steps": [ + { + "Position": { + "X": -694.03015, + "Y": 52.60457, + "Z": -139.54802 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "Mount": true + }, { "DataId": 1029606, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3613_On Track.json b/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3613_On Track.json index 32a56078..90c17979 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3613_On Track.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3613_On Track.json @@ -127,7 +127,9 @@ "TerritoryId": 815, "InteractionType": "Combat", "EnemySpawnType": "AfterInteraction", - "KillEnemyDataIds": [10883], + "KillEnemyDataIds": [ + 10883 + ], "CompletionQuestVariablesFlags": [ null, null, @@ -147,7 +149,9 @@ "TerritoryId": 815, "InteractionType": "Combat", "EnemySpawnType": "AfterInteraction", - "KillEnemyDataIds": [10883], + "KillEnemyDataIds": [ + 10883 + ], "CompletionQuestVariablesFlags": [ null, null, @@ -167,7 +171,9 @@ "TerritoryId": 815, "InteractionType": "Combat", "EnemySpawnType": "AfterInteraction", - "KillEnemyDataIds": [10883], + "KillEnemyDataIds": [ + 10883 + ], "CompletionQuestVariablesFlags": [ null, null, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3614_Down for Maintenance.json b/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3614_Down for Maintenance.json index 6fddc0c2..610aec80 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3614_Down for Maintenance.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3614_Down for Maintenance.json @@ -51,8 +51,7 @@ "RewardItemId": 2002560, "RewardItemCount": 3 } - ], - "Comment": "Probably needs manual movement (or waiting for enemies to respawn)" + ] } ] }, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3616_A Convenient Distraction.json b/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3616_A Convenient Distraction.json index 66b6fd40..d3b3b7fe 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3616_A Convenient Distraction.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3616_A Convenient Distraction.json @@ -20,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1027927, + "Position": { + "X": -476.95123, + "Y": 47.78906, + "Z": -200.61041 + }, + "TerritoryId": 815, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3511 + }, { "DataId": 1029756, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3619_Full Steam Ahead.json b/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3619_Full Steam Ahead.json index b578ea08..425b0c74 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3619_Full Steam Ahead.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3619_Full Steam Ahead.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 860 - ], "QuestSequence": [ { "Sequence": 0, @@ -23,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1030419, + "Position": { + "X": -506.6148, + "Y": 45.614502, + "Z": -194.50684 + }, + "TerritoryId": 815, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3525 + }, { "DataId": 1029768, "Position": { @@ -31,7 +39,8 @@ "Z": -583.7339 }, "TerritoryId": 815, - "InteractionType": "Interact" + "InteractionType": "Interact", + "AetheryteShortcut": "Amh Araeng - Twine" } ] }, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3621_A Fresh Start.json b/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3621_A Fresh Start.json index f33c24e0..6018d53d 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3621_A Fresh Start.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3621_A Fresh Start.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 836 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3622_More than a Hunch.json b/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3622_More than a Hunch.json index 0b92b58a..8dea3028 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3622_More than a Hunch.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/D-Amh Araeng 2/3622_More than a Hunch.json @@ -54,6 +54,13 @@ "AethernetShortcut": [ "[Crystarium] The Dossal Gate", "[Crystarium] The Pendants" + ], + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_LUCKMD117_03622_Q2_000_000", + "Yes": true + } ] } ] diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3631_A Feast of Lies.json b/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3631_A Feast of Lies.json index 4967fd04..7eee6e71 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3631_A Feast of Lies.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3631_A Feast of Lies.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [863], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3632_Paradise Fallen.json b/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3632_Paradise Fallen.json index f8f5d851..dbc109f6 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3632_Paradise Fallen.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3632_Paradise Fallen.json @@ -61,12 +61,6 @@ { "Sequence": 3, "Steps": [ - { - "TerritoryId": 820, - "InteractionType": "AttuneAethernetShard", - "AethernetShard": "[Eulmore] Southeast Derelicts", - "Comment": "TODO This step isn't very a good place to have this attunement; the next step should use Nightsoil Pots" - }, { "DataId": 1030191, "Position": { @@ -77,7 +71,7 @@ "TerritoryId": 820, "InteractionType": "Interact", "AethernetShortcut": [ - "[Eulmore] Southeast Derelicts", + "[Eulmore] Nightsoil Pots", "[Eulmore] The Mainstay" ] } diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3634_The View from Above.json b/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3634_The View from Above.json index 2c9e1fff..5285a8a2 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3634_The View from Above.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3634_The View from Above.json @@ -73,7 +73,7 @@ "Z": 22.47644 }, "TerritoryId": 814, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Snipe", "Comment": "Click on the guy left of the the rock" } ] diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3637_Meet the Tholls.json b/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3637_Meet the Tholls.json index ee2b89dc..8396eed7 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3637_Meet the Tholls.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3637_Meet the Tholls.json @@ -59,7 +59,7 @@ "Z": -616.47974 }, "TerritoryId": 814, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Snipe", "Comment": "Click red hat dwarf (always shows up in the same location)" } ] @@ -75,7 +75,7 @@ "Z": -616.47974 }, "TerritoryId": 814, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Snipe", "Comment": "Click red hat dwarf" } ] diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3640_Rich Veins of Hope.json b/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3640_Rich Veins of Hope.json index fcb82d63..04f918d9 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3640_Rich Veins of Hope.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3640_Rich Veins of Hope.json @@ -36,6 +36,25 @@ { "Sequence": 2, "Steps": [ + { + "DataId": 1030776, + "Position": { + "X": -450.85834, + "Y": 417.1344, + "Z": -610.8644 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "ExcelSheet": "quest/035/LucKzi101_03556", + "Type": "List", + "Prompt": "TEXT_LUCKZI101_03556_Q1_000_000", + "Answer": "TEXT_LUCKZI101_03556_A1_000_001" + } + ], + "PickUpQuestId": 3556 + }, { "DataId": 1030292, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3642_A Breath of Respite.json b/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3642_A Breath of Respite.json index 8d687cb0..a1e3334c 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3642_A Breath of Respite.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3642_A Breath of Respite.json @@ -36,6 +36,18 @@ { "Sequence": 2, "Steps": [ + { + "DataId": 1027956, + "Position": { + "X": -128.77094, + "Y": 354.35815, + "Z": -179.18677 + }, + "StopDistance": 5, + "TerritoryId": 814, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3537 + }, { "Position": { "X": -122.537926, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3643_Extinguishing the Last Light.json b/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3643_Extinguishing the Last Light.json index 5c025ad6..9ee12fd7 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3643_Extinguishing the Last Light.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/E-Kholusia 2/3643_Extinguishing the Last Light.json @@ -1,10 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 822, - 846 - ], "QuestSequence": [ { "Sequence": 0, @@ -55,7 +51,8 @@ "Z": -797.3602 }, "TerritoryId": 814, - "InteractionType": "Interact" + "InteractionType": "Interact", + "AetheryteShortcut": "Kholusia - Tomra" } ] }, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3645_In His Garden.json b/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3645_In His Garden.json index a2485ea1..ece82b0f 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3645_In His Garden.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3645_In His Garden.json @@ -129,6 +129,14 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 819, + "InteractionType": "None", + "AethernetShortcut": [ + "[Crystarium] The Amaro Launch", + "[Crystarium] Tessellation (Lakeland)" + ] + }, { "Position": { "X": 608.7031, @@ -137,10 +145,6 @@ }, "TerritoryId": 813, "InteractionType": "WalkTo", - "AethernetShortcut": [ - "[Crystarium] The Amaro Launch", - "[Crystarium] Tessellation (Lakeland)" - ], "Fly": true, "SkipConditions": { "StepIf": { diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3647_To Storm-tossed Seas.json b/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3647_To Storm-tossed Seas.json index 86cc8daa..74e45874 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3647_To Storm-tossed Seas.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3647_To Storm-tossed Seas.json @@ -21,6 +21,14 @@ { "Sequence": 1, "Steps": [ + { + "TerritoryId": 819, + "AethernetShortcut": [ + "[Crystarium] The Amaro Launch", + "[Crystarium] Tessellation (Lakeland)" + ], + "InteractionType": "None" + }, { "Position": { "X": 55.589294, @@ -29,10 +37,6 @@ }, "TerritoryId": 813, "InteractionType": "WalkTo", - "AethernetShortcut": [ - "[Crystarium] The Amaro Launch", - "[Crystarium] Tessellation (Lakeland)" - ], "SkipConditions": { "StepIf": { "Flying": "Unlocked" @@ -85,7 +89,6 @@ }, { "Sequence": 2, - "Comment": "TODO Verify when flying unlocked", "Steps": [ { "Position": { @@ -148,7 +151,6 @@ }, { "Sequence": 3, - "Comment": "TODO Verify when flying unlocked", "Steps": [ { "Position": { @@ -158,7 +160,8 @@ }, "TerritoryId": 813, "InteractionType": "WalkTo", - "DisableNavmesh": true + "DisableNavmesh": true, + "Mount": true }, { "Position": { @@ -167,7 +170,12 @@ "Z": 810.7269 }, "TerritoryId": 813, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } }, { "Position": { @@ -177,7 +185,12 @@ }, "TerritoryId": 813, "InteractionType": "WalkTo", - "Mount": true + "Mount": true, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } }, { "DataId": 1030333, @@ -188,6 +201,7 @@ }, "TerritoryId": 813, "InteractionType": "Interact", + "Fly": true, "DialogueChoices": [ { "Type": "List", diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3649_City of the Ancients.json b/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3649_City of the Ancients.json index 97c8984c..3242f9d5 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3649_City of the Ancients.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3649_City of the Ancients.json @@ -20,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1031015, + "Position": { + "X": 530.51025, + "Y": 353.54364, + "Z": -244.00702 + }, + "TerritoryId": 818, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3588 + }, { "DataId": 1030518, "Position": { @@ -43,7 +54,7 @@ "Z": -414.38928 }, "TerritoryId": 818, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Snipe", "Comment": "Click top left (broken) window", "CompletionQuestVariablesFlags": [ null, @@ -54,6 +65,15 @@ 128 ] }, + { + "Position": { + "X": 324.9114, + "Y": 353.76694, + "Z": -475.44562 + }, + "TerritoryId": 818, + "InteractionType": "WalkTo" + }, { "DataId": 2010142, "Position": { @@ -61,9 +81,18 @@ "Y": 355.79456, "Z": -477.53113 }, + "StopDistance": 4, "TerritoryId": 818, "InteractionType": "UseItem", - "ItemId": 2002673 + "ItemId": 2002673, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] } ] }, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3653_A Greater Purpose.json b/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3653_A Greater Purpose.json index 42fd0d82..bae69a79 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3653_A Greater Purpose.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3653_A Greater Purpose.json @@ -20,6 +20,39 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1027778, + "Position": { + "X": -713.28296, + "Y": -245.368, + "Z": 498.49683 + }, + "TerritoryId": 818, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3593 + }, + { + "DataId": 1030477, + "Position": { + "X": -594.6593, + "Y": -266.7698, + "Z": 338.70447 + }, + "TerritoryId": 818, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3594 + }, + { + "DataId": 1027775, + "Position": { + "X": -390.85986, + "Y": -260.17664, + "Z": 308.46106 + }, + "TerritoryId": 818, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 3592 + }, { "TerritoryId": 818, "InteractionType": "AttuneAetheryte", @@ -162,7 +195,8 @@ "Z": 444.7069 }, "TerritoryId": 818, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "AetheryteShortcut": "Tempest - Macarenses Angle" }, { "DataId": 1030558, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3654_Shadowbringers.json b/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3654_Shadowbringers.json index 40480ce7..eb439d5f 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3654_Shadowbringers.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3654_Shadowbringers.json @@ -1,10 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 838, - 847 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3674_A Grand Adventure.json b/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3674_A Grand Adventure.json index 8913f750..bb316275 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3674_A Grand Adventure.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3674_A Grand Adventure.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 884 - ], "QuestSequence": [ { "Sequence": 0, @@ -23,6 +20,59 @@ { "Sequence": 1, "Steps": [ + { + "TerritoryId": 819, + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] Tessellation (Lakeland)" + ], + "InteractionType": "None" + }, + { + "Position": { + "X": 55.589294, + "Y": 2.0276523, + "Z": 669.1557 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + }, + "Comment": "these bridges have navmesh problems" + }, + { + "Position": { + "X": 15.410904, + "Y": 2.2598603, + "Z": 677.3755 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "DisableNavmesh": true, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "Position": { + "X": -54.93826, + "Y": 3.1323283, + "Z": 690.1962 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, { "Position": { "X": -115.65658, @@ -32,7 +82,6 @@ "StopDistance": 0.5, "TerritoryId": 813, "InteractionType": "WalkTo", - "AetheryteShortcut": "Lakeland - Fort Jobb", "Fly": true }, { diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3676_Good for the Soul.json b/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3676_Good for the Soul.json index 44e0a9ef..bdc83665 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3676_Good for the Soul.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3676_Good for the Soul.json @@ -58,6 +58,20 @@ { "Sequence": 3, "Steps": [ + { + "Position": { + "X": -27.96634, + "Y": 41.707367, + "Z": -482.99057 + }, + "TerritoryId": 815, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, { "DataId": 2010811, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3679_For the People.json b/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3679_For the People.json index 3b3d2587..0d7a977a 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3679_For the People.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3679_For the People.json @@ -36,6 +36,22 @@ { "Sequence": 2, "Steps": [ + { + "DataId": 1028319, + "Position": { + "X": -454.7036, + "Y": 65.77815, + "Z": 58.27417 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "TargetTerritoryId": 814, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, { "DataId": 1031751, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3680_Finding Good Help.json b/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3680_Finding Good Help.json index 19ac4906..2416c087 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3680_Finding Good Help.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3680_Finding Good Help.json @@ -44,7 +44,7 @@ "Z": -161.45575 }, "TerritoryId": 814, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Snipe", "Comment": "Help Master Chai dodge enemies" } ] diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3682_Vows of Virtue, Deeds of Cruelty.json b/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3682_Vows of Virtue, Deeds of Cruelty.json index b9298647..c8a671c3 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3682_Vows of Virtue, Deeds of Cruelty.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/G-5.1/3682_Vows of Virtue, Deeds of Cruelty.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 893 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3765_A Sleep Disturbed.json b/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3765_A Sleep Disturbed.json index 851bec64..5cd92e47 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3765_A Sleep Disturbed.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3765_A Sleep Disturbed.json @@ -70,6 +70,12 @@ "ExcelSheet": "GimmickYesNo", "Prompt": 142, "Yes": true + }, + { + "Type": "YesNo", + "ExcelSheet": "GimmickYesNo", + "Prompt": 137, + "Yes": true } ] } diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3767_Deep Designs.json b/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3767_Deep Designs.json index ba1d3b18..b63b800c 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3767_Deep Designs.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3767_Deep Designs.json @@ -51,6 +51,49 @@ } } }, + { + "Position": { + "X": -559.0543, + "Y": 394.95718, + "Z": -611.97614 + }, + "TerritoryId": 818, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "Position": { + "X": -681.43286, + "Y": 404.5379, + "Z": -693.3609 + }, + "TerritoryId": 818, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "Position": { + "X": -675.946, + "Y": 408.10754, + "Z": -711.8061 + }, + "TerritoryId": 818, + "InteractionType": "WalkTo", + "DisableNavmesh": true, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, { "Position": { "X": -423.6145, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3768_A Whale's Tale.json b/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3768_A Whale's Tale.json index 92f7c836..546fe9cc 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3768_A Whale's Tale.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3768_A Whale's Tale.json @@ -20,6 +20,73 @@ { "Sequence": 1, "Steps": [ + { + "TerritoryId": 819, + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] Tessellation (Lakeland)" + ], + "InteractionType": "None" + }, + { + "Position": { + "X": 55.589294, + "Y": 2.0276523, + "Z": 669.1557 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + }, + "Comment": "these bridges have navmesh problems" + }, + { + "Position": { + "X": 15.410904, + "Y": 2.2598603, + "Z": 677.3755 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "DisableNavmesh": true, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "Position": { + "X": -82.79376, + "Y": 11.970126, + "Z": 765.8721 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "Position": { + "X": -234.70464, + "Y": 1.0942776, + "Z": 738.40204 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, { "Position": { "X": -269.44116, @@ -28,7 +95,6 @@ }, "TerritoryId": 813, "InteractionType": "WalkTo", - "AetheryteShortcut": "Lakeland - Fort Jobb", "Fly": true }, { @@ -72,7 +138,12 @@ "InteractionType": "WalkTo", "Mount": true, "Fly": true, - "DisableNavmesh": true + "DisableNavmesh": true, + "SkipConditions": { + "StepIf": { + "Flying": "Locked" + } + } }, { "Position": { @@ -83,7 +154,44 @@ "TerritoryId": 813, "InteractionType": "WalkTo", "Fly": true, - "DisableNavmesh": true + "DisableNavmesh": true, + "SkipConditions": { + "StepIf": { + "Flying": "Locked" + } + } + }, + { + "Position": { + "X": -565.32196, + "Y": -1.9743931, + "Z": 799.9003 + }, + "StopDistance": 1, + "TerritoryId": 813, + "InteractionType": "Dive", + "DisableNavmesh": true, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + + "Position": { + "X": -630.4265, + "Y": -29.862, + "Z": 752.5597 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "Mount": true, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } }, { "DataId": 2010280, @@ -105,6 +213,16 @@ 64 ] }, + { + "Position": { + "X": -654.167, + "Y": -41.328938, + "Z": 741.29126 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "Mount": true + }, { "DataId": 2010278, "Position": { @@ -133,6 +251,7 @@ }, "TerritoryId": 813, "InteractionType": "Interact", + "Mount": true, "CompletionQuestVariablesFlags": [ null, null, @@ -140,8 +259,7 @@ null, null, 32 - ], - "Comment": "TODO Check if pathfinding works automatically now" + ] } ] }, @@ -151,14 +269,44 @@ { "Position": { "X": -643.2488, - "Y": 4.133975, + "Y": -1.974393, "Z": 714.8211 }, "TerritoryId": 813, "InteractionType": "WalkTo", "Mount": true, "Fly": true, - "DisableNavmesh": true + "DisableNavmesh": true, + "RestartNavigationIfCancelled": false + }, + { + "Position": { + "X": -573.45654, + "Y": 0.39776123, + "Z": 810.7269 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "Position": { + "X": -619.98676, + "Y": 24.866888, + "Z": 794.4714 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "Mount": true, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } }, { "DataId": 1030333, @@ -191,6 +339,50 @@ { "Sequence": 255, "Steps": [ + { + "Position": { + "X": -82.79376, + "Y": 11.970126, + "Z": 765.8721 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "Position": { + "X": 15.410904, + "Y": 2.2598603, + "Z": 677.3755 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "Position": { + "X": 55.589294, + "Y": 2.0276523, + "Z": 669.1557 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "DisableNavmesh": true, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + }, + "Comment": "these bridges have navmesh problems" + }, { "DataId": 1032554, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3769_Beneath the Surface.json b/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3769_Beneath the Surface.json index 5c1fed1b..c947dc96 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3769_Beneath the Surface.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3769_Beneath the Surface.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 898 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3772_Heroic Dreams.json b/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3772_Heroic Dreams.json index 029ed22f..af76cbcc 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3772_Heroic Dreams.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3772_Heroic Dreams.json @@ -131,7 +131,6 @@ "Sequence": 4, "Steps": [ { - "Comment": "TODO Verify Area Transition", "Position": { "X": 837.8474, "Y": 37.845993, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3774_Food for the Soul.json b/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3774_Food for the Soul.json index aaf60578..3408d12f 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3774_Food for the Soul.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3774_Food for the Soul.json @@ -52,7 +52,6 @@ "Fly": true }, { - "Comment": "TODO Verify", "DataId": 1033818, "Position": { "X": 24.551636, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3775_Faded Memories.json b/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3775_Faded Memories.json index ed00c176..9bd05223 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3775_Faded Memories.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3775_Faded Memories.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 932 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3777_The Converging Light.json b/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3777_The Converging Light.json index e6b53036..70ed3448 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3777_The Converging Light.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3777_The Converging Light.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 916 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3778_Hope's Confluence.json b/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3778_Hope's Confluence.json index 553634bd..a0daf444 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3778_Hope's Confluence.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3778_Hope's Confluence.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 922 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3779_Nothing Unsaid.json b/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3779_Nothing Unsaid.json index 7510d8d5..bae145ef 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3779_Nothing Unsaid.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3779_Nothing Unsaid.json @@ -28,7 +28,7 @@ "Y": -2.59839E-07, "Z": -1.4801636 }, - "StopDistance": 5, + "StopDistance": 7, "TerritoryId": 819, "InteractionType": "Interact" } diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3780_The Journey Continues.json b/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3780_The Journey Continues.json index 5911a4f3..1b46d4a4 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3780_The Journey Continues.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/I-5.3/3780_The Journey Continues.json @@ -54,6 +54,20 @@ { "Sequence": 255, "Steps": [ + { + "Position": { + "X": -221.27931, + "Y": 55.081436, + "Z": -553.9665 + }, + "TerritoryId": 816, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, { "DataId": 1033872, "Position": { diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/J-5.4/4011_Like Master, Like Pupil.json b/QuestPaths/5.x - Shadowbringers/MSQ/J-5.4/4011_Like Master, Like Pupil.json index 6eb1a7cc..959276cc 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/J-5.4/4011_Like Master, Like Pupil.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/J-5.4/4011_Like Master, Like Pupil.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 933 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/J-5.4/4015_The Great Ship Vylbrand.json b/QuestPaths/5.x - Shadowbringers/MSQ/J-5.4/4015_The Great Ship Vylbrand.json index c3f2fc98..a906fe10 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/J-5.4/4015_The Great Ship Vylbrand.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/J-5.4/4015_The Great Ship Vylbrand.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 954 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/K-5.5/4062_The Flames of War.json b/QuestPaths/5.x - Shadowbringers/MSQ/K-5.5/4062_The Flames of War.json index bf610ba5..d4f27497 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/K-5.5/4062_The Flames of War.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/K-5.5/4062_The Flames of War.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 938 - ], "QuestSequence": [ { "Sequence": 0, @@ -91,7 +88,7 @@ "Y": 83.2, "Z": 15.121643 }, - "StopDistance": 5, + "StopDistance": 7, "TerritoryId": 130, "InteractionType": "CompleteQuest" } diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/K-5.5/4063_When the Dust Settles.json b/QuestPaths/5.x - Shadowbringers/MSQ/K-5.5/4063_When the Dust Settles.json index 607c69f2..cc73070e 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/K-5.5/4063_When the Dust Settles.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/K-5.5/4063_When the Dust Settles.json @@ -12,7 +12,7 @@ "Y": 83.2, "Z": 15.121643 }, - "StopDistance": 5, + "StopDistance": 7, "TerritoryId": 130, "InteractionType": "AcceptQuest" } diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/L-5.55/4066_Death Unto Dawn.json b/QuestPaths/5.x - Shadowbringers/MSQ/L-5.55/4066_Death Unto Dawn.json index 12faa18d..2e796799 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/L-5.55/4066_Death Unto Dawn.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/L-5.55/4066_Death Unto Dawn.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 977 - ], "QuestSequence": [ { "Sequence": 0, @@ -58,7 +55,7 @@ "Steps": [ { "TerritoryId": 351, - "InteractionType": "WaitForManualProgress", + "InteractionType": "None", "Comment": "Credits" } ] diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3255_In the Middle of Nowhere.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3255_In the Middle of Nowhere.json new file mode 100644 index 00000000..b34f0f8e --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3255_In the Middle of Nowhere.json @@ -0,0 +1,76 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030090, + "Position": { + "X": -73.35016, + "Y": 1.5753315E-08, + "Z": 55.954834 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030091, + "Position": { + "X": 380.97205, + "Y": -64.31066, + "Z": 511.2229 + }, + "TerritoryId": 815, + "InteractionType": "Interact", + "AetheryteShortcut": "Amh Araeng - Inn at Journey's Head", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1030091, + "Position": { + "X": 380.97205, + "Y": -64.31066, + "Z": 511.2229 + }, + "TerritoryId": 815, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_LUCKRA101_03255_YESNO_001", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030095, + "Position": { + "X": -0.56463623, + "Y": -2.028786, + "Z": -17.807312 + }, + "TerritoryId": 878, + "InteractionType": "CompleteQuest", + "NextQuestId": 3256 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3256_Deploy the Core.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3256_Deploy the Core.json new file mode 100644 index 00000000..25740de5 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3256_Deploy the Core.json @@ -0,0 +1,73 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030095, + "Position": { + "X": -0.56463623, + "Y": -2.028786, + "Z": -17.807312 + }, + "TerritoryId": 878, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "TerritoryId": 878, + "InteractionType": "Duty", + "ContentFinderConditionId": 653 + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1030101, + "Position": { + "X": -8.712891, + "Y": -2.498, + "Z": 13.137939 + }, + "TerritoryId": 878, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 2009981, + "Position": { + "X": -14.66394, + "Y": -2.609314, + "Z": 23.819275 + }, + "TerritoryId": 878, + "InteractionType": "Interact", + "TargetTerritoryId": 857 + }, + { + "DataId": 1030104, + "Position": { + "X": 101.57922, + "Y": -2.8675152E-14, + "Z": 94.346436 + }, + "TerritoryId": 857, + "InteractionType": "CompleteQuest", + "NextQuestId": 3257 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3257_One Fell Swoop.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3257_One Fell Swoop.json new file mode 100644 index 00000000..ae4859a1 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3257_One Fell Swoop.json @@ -0,0 +1,49 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030110, + "Position": { + "X": 99.99231, + "Y": -7.687662E-13, + "Z": 92.51538 + }, + "StopDistance": 6, + "TerritoryId": 857, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "TerritoryId": 878, + "InteractionType": "Duty", + "ContentFinderConditionId": 684 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030110, + "Position": { + "X": 99.99231, + "Y": -7.687662E-13, + "Z": 92.51538 + }, + "StopDistance": 6, + "TerritoryId": 857, + "InteractionType": "CompleteQuest", + "NextQuestId": 3258 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3258_Nor Any Drop to Drink.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3258_Nor Any Drop to Drink.json new file mode 100644 index 00000000..f9cccf0f --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3258_Nor Any Drop to Drink.json @@ -0,0 +1,90 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030110, + "Position": { + "X": 99.99231, + "Y": -7.687662E-13, + "Z": 92.51538 + }, + "StopDistance": 6, + "TerritoryId": 857, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030117, + "Position": { + "X": -1.3580933, + "Y": -2.0308912, + "Z": -16.647583 + }, + "TerritoryId": 878, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2010135, + "Position": { + "X": -14.66394, + "Y": -2.5788574, + "Z": 23.819275 + }, + "TerritoryId": 878, + "InteractionType": "Interact", + "TargetTerritoryId": 857 + }, + { + "DataId": 1030110, + "Position": { + "X": 99.99231, + "Y": -7.687662E-13, + "Z": 92.51538 + }, + "TerritoryId": 857, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 878, + "InteractionType": "Duty", + "ContentFinderConditionId": 682 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030110, + "Position": { + "X": 99.99231, + "Y": -7.687662E-13, + "Z": 92.51538 + }, + "StopDistance": 6, + "TerritoryId": 857, + "InteractionType": "CompleteQuest", + "NextQuestId": 3259 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3259_Super Seismic.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3259_Super Seismic.json new file mode 100644 index 00000000..1f3c5c12 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3259_Super Seismic.json @@ -0,0 +1,82 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030113, + "Position": { + "X": -2.1210327, + "Y": -2.4980056, + "Z": 18.142944 + }, + "StopDistance": 5, + "TerritoryId": 878, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010135, + "Position": { + "X": -14.66394, + "Y": -2.5788574, + "Z": 23.819275 + }, + "TerritoryId": 878, + "InteractionType": "Interact", + "TargetTerritoryId": 857 + }, + { + "DataId": 1030110, + "Position": { + "X": 99.99231, + "Y": -7.687662E-13, + "Z": 92.51538 + }, + "TerritoryId": 857, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 878, + "InteractionType": "Duty", + "ContentFinderConditionId": 689 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030110, + "Position": { + "X": 99.99231, + "Y": -7.687662E-13, + "Z": 92.51538 + }, + "StopDistance": 6, + "TerritoryId": 857, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKRA105_03259_Q2_000_000", + "Answer": "TEXT_LUCKRA105_03259_A2_000_001" + } + ], + "NextQuestId": 3260 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3260_The Next Piece of the Puzzle.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3260_The Next Piece of the Puzzle.json new file mode 100644 index 00000000..8672b983 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3260_The Next Piece of the Puzzle.json @@ -0,0 +1,78 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030118, + "Position": { + "X": -3.8605957, + "Y": -2.497989, + "Z": 19.119507 + }, + "StopDistance": 5, + "TerritoryId": 878, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030387, + "Position": { + "X": 31.967651, + "Y": 4.929005, + "Z": -9.10968 + }, + "TerritoryId": 878, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1030091, + "Position": { + "X": 380.97205, + "Y": -64.31066, + "Z": 511.2229 + }, + "TerritoryId": 815, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 270.40494, + "Y": 7.1558266, + "Z": -234.46175 + }, + "TerritoryId": 815, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1030121, + "Position": { + "X": 268.8181, + "Y": 7.1558256, + "Z": -233.66144 + }, + "TerritoryId": 815, + "InteractionType": "CompleteQuest", + "NextQuestId": 3787 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3787_Away with the Faerie.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3787_Away with the Faerie.json new file mode 100644 index 00000000..e19a7446 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3787_Away with the Faerie.json @@ -0,0 +1,108 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032715, + "Position": { + "X": 265.3086, + "Y": 7.1558266, + "Z": -237.81189 + }, + "StopDistance": 7, + "TerritoryId": 815, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1032606, + "Position": { + "X": 318.2268, + "Y": 1.5411377, + "Z": -225.6352 + }, + "TerritoryId": 815, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2010957, + "Position": { + "X": 485.40466, + "Y": -26.29132, + "Z": -20.859192 + }, + "TerritoryId": 815, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1032591, + "Position": { + "X": 482.44446, + "Y": -41.81235, + "Z": 81.55945 + }, + "StopDistance": 6, + "TerritoryId": 815, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1030092, + "Position": { + "X": 382.864, + "Y": -64.404945, + "Z": 512.01636 + }, + "TerritoryId": 815, + "InteractionType": "Interact", + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_LUCKRA201_03787_YESNO_001", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032596, + "Position": { + "X": -6.0273438, + "Y": -2.5312338, + "Z": 21.62201 + }, + "TerritoryId": 878, + "InteractionType": "CompleteQuest", + "NextQuestId": 3788 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3788_Blood and Thunder.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3788_Blood and Thunder.json new file mode 100644 index 00000000..ebc6d036 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3788_Blood and Thunder.json @@ -0,0 +1,74 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032596, + "Position": { + "X": -6.0273438, + "Y": -2.5312338, + "Z": 21.62201 + }, + "TerritoryId": 878, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010135, + "Position": { + "X": -14.66394, + "Y": -2.5788574, + "Z": 23.819275 + }, + "TerritoryId": 878, + "InteractionType": "Interact", + "TargetTerritoryId": 857 + }, + { + "DataId": 1030112, + "Position": { + "X": 101.548706, + "Y": -2.330609E-14, + "Z": 93.217285 + }, + "TerritoryId": 857, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 857, + "InteractionType": "Duty", + "ContentFinderConditionId": 715 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030110, + "Position": { + "X": 99.99231, + "Y": -7.687662E-13, + "Z": 92.51538 + }, + "StopDistance": 6, + "TerritoryId": 857, + "InteractionType": "CompleteQuest", + "NextQuestId": 3789 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3789_Into the Firestorm.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3789_Into the Firestorm.json new file mode 100644 index 00000000..0feffc87 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3789_Into the Firestorm.json @@ -0,0 +1,123 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032605, + "Position": { + "X": -8.743469, + "Y": -2.0474615, + "Z": -10.025269 + }, + "StopDistance": 6, + "TerritoryId": 878, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1032602, + "Position": { + "X": -6.7597656, + "Y": -2.1008918, + "Z": -8.560364 + }, + "StopDistance": 6, + "TerritoryId": 878, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1032602, + "Position": { + "X": -6.7597656, + "Y": -2.1008918, + "Z": -8.560364 + }, + "StopDistance": 6, + "TerritoryId": 878, + "InteractionType": "Emote", + "Emote": "rally" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2010959, + "Position": { + "X": -7.461731, + "Y": -2.2736206, + "Z": -5.8442383 + }, + "TerritoryId": 878, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2010135, + "Position": { + "X": -14.66394, + "Y": -2.5788574, + "Z": 23.819275 + }, + "TerritoryId": 878, + "InteractionType": "Interact", + "TargetTerritoryId": 857 + }, + { + "DataId": 1030112, + "Position": { + "X": 101.548706, + "Y": -2.330609E-14, + "Z": 93.217285 + }, + "TerritoryId": 857, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "TerritoryId": 857, + "InteractionType": "Duty", + "ContentFinderConditionId": 719 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030110, + "Position": { + "X": 99.99231, + "Y": -7.687662E-13, + "Z": 92.51538 + }, + "StopDistance": 6, + "TerritoryId": 857, + "InteractionType": "CompleteQuest", + "NextQuestId": 3790 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3790_Heart of Darkness.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3790_Heart of Darkness.json new file mode 100644 index 00000000..4fa12e46 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3790_Heart of Darkness.json @@ -0,0 +1,89 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032604, + "Position": { + "X": -7.034485, + "Y": -2.0372493, + "Z": -11.215393 + }, + "StopDistance": 7, + "TerritoryId": 878, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010135, + "Position": { + "X": -14.66394, + "Y": -2.5788574, + "Z": 23.819275 + }, + "TerritoryId": 878, + "InteractionType": "Interact", + "TargetTerritoryId": 857 + }, + { + "DataId": 1030112, + "Position": { + "X": 101.548706, + "Y": -2.330609E-14, + "Z": 93.217285 + }, + "TerritoryId": 857, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1032610, + "Position": { + "X": 101.823364, + "Y": -2.7503654E-14, + "Z": 94.13281 + }, + "TerritoryId": 857, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 857, + "InteractionType": "Duty", + "ContentFinderConditionId": 726 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1032610, + "Position": { + "X": 101.823364, + "Y": -2.7503654E-14, + "Z": 94.13281 + }, + "TerritoryId": 857, + "InteractionType": "CompleteQuest", + "NextQuestId": 3791 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3791_On Thin Ice.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3791_On Thin Ice.json new file mode 100644 index 00000000..c745e69c --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3791_On Thin Ice.json @@ -0,0 +1,49 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032611, + "Position": { + "X": 103.65454, + "Y": -2.7643511E-14, + "Z": 94.56018 + }, + "StopDistance": 5, + "TerritoryId": 857, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "TerritoryId": 857, + "InteractionType": "Duty", + "ContentFinderConditionId": 728 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030110, + "Position": { + "X": 99.99231, + "Y": -7.687662E-13, + "Z": 92.51538 + }, + "StopDistance": 5, + "TerritoryId": 857, + "InteractionType": "CompleteQuest", + "NextQuestId": 3792 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3792_Life Finds a Way.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3792_Life Finds a Way.json new file mode 100644 index 00000000..bf5cfd61 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3792_Life Finds a Way.json @@ -0,0 +1,65 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032602, + "Position": { + "X": -6.7597656, + "Y": -2.1008885, + "Z": -8.560364 + }, + "StopDistance": 5, + "TerritoryId": 878, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030091, + "Position": { + "X": 380.97205, + "Y": -64.31066, + "Z": 511.2229 + }, + "TerritoryId": 815, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 268.15204, + "Y": 7.1558266, + "Z": -237.94643 + }, + "TerritoryId": 815, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Amh Araeng - Mord Souq", + "Fly": true + }, + { + "DataId": 1032590, + "Position": { + "X": 265.3086, + "Y": 7.1558266, + "Z": -237.78137 + }, + "StopDistance": 4, + "TerritoryId": 815, + "InteractionType": "CompleteQuest", + "NextQuestId": 3793 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3793_Worlds Apart.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3793_Worlds Apart.json new file mode 100644 index 00000000..a460df4e --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3793_Worlds Apart.json @@ -0,0 +1,70 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032590, + "Position": { + "X": 265.3086, + "Y": 7.1558266, + "Z": -237.78137 + }, + "StopDistance": 4, + "TerritoryId": 815, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010961, + "Position": { + "X": -6.9733887, + "Y": 3.982544, + "Z": 221.36255 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Pendants" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 268.15204, + "Y": 7.1558266, + "Z": -237.94643 + }, + "TerritoryId": 815, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Amh Araeng - Mord Souq", + "Fly": true + }, + { + "DataId": 1032590, + "Position": { + "X": 265.3086, + "Y": 7.1558266, + "Z": -237.78137 + }, + "StopDistance": 4, + "TerritoryId": 815, + "InteractionType": "CompleteQuest", + "NextQuestId": 3975 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3975_Empty Promise.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3975_Empty Promise.json new file mode 100644 index 00000000..c5c21cb0 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3975_Empty Promise.json @@ -0,0 +1,55 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032590, + "Position": { + "X": 265.3086, + "Y": 7.1558266, + "Z": -237.78137 + }, + "StopDistance": 4, + "TerritoryId": 815, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1034507, + "Position": { + "X": 381.9486, + "Y": -64.35385, + "Z": 511.13135 + }, + "TerritoryId": 815, + "InteractionType": "Interact", + "AetheryteShortcut": "Amh Araeng - Inn at Journey's Head", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1034508, + "Position": { + "X": 380.66675, + "Y": -64.28985, + "Z": 510.58203 + }, + "TerritoryId": 815, + "InteractionType": "CompleteQuest", + "NextQuestId": 3976 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3976_Fear of the Dark.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3976_Fear of the Dark.json new file mode 100644 index 00000000..7261a5be --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3976_Fear of the Dark.json @@ -0,0 +1,74 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1034510, + "Position": { + "X": 31.021484, + "Y": 4.9285717, + "Z": -8.560364 + }, + "StopDistance": 4, + "TerritoryId": 878, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010135, + "Position": { + "X": -14.66394, + "Y": -2.5788574, + "Z": 23.819275 + }, + "TerritoryId": 878, + "InteractionType": "Interact", + "TargetTerritoryId": 857 + }, + { + "DataId": 1030110, + "Position": { + "X": 99.99231, + "Y": -7.687662E-13, + "Z": 92.51538 + }, + "TerritoryId": 857, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 857, + "InteractionType": "Duty", + "ContentFinderConditionId": 749 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1034511, + "Position": { + "X": 101.27405, + "Y": -2.4161777E-14, + "Z": 93.36987 + }, + "TerritoryId": 857, + "InteractionType": "CompleteQuest", + "NextQuestId": 3977 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3977_Shadows of the Past.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3977_Shadows of the Past.json new file mode 100644 index 00000000..0ab8de23 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3977_Shadows of the Past.json @@ -0,0 +1,97 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1034514, + "Position": { + "X": -8.163635, + "Y": -2.4984214, + "Z": 18.936401 + }, + "StopDistance": 4, + "TerritoryId": 878, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1034513, + "Position": { + "X": -6.149414, + "Y": -2.4984214, + "Z": 19.72992 + }, + "StopDistance": 5, + "TerritoryId": 878, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2011241, + "Position": { + "X": -14.6356, + "Y": -2.581, + "Z": 23.8476 + }, + "TerritoryId": 878, + "InteractionType": "Interact", + "TargetTerritoryId": 857 + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1034515, + "Position": { + "X": -7.888916, + "Y": -2.4984214, + "Z": 12.741211 + }, + "StopDistance": 5, + "TerritoryId": 878, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "TerritoryId": 857, + "InteractionType": "Duty", + "ContentFinderConditionId": 747 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1034518, + "Position": { + "X": 101.182495, + "Y": -3.8122757E-14, + "Z": 103.715576 + }, + "StopDistance": 7, + "TerritoryId": 857, + "InteractionType": "CompleteQuest", + "NextQuestId": 3978 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3978_Voice of the Soul.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3978_Voice of the Soul.json new file mode 100644 index 00000000..de061f16 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3978_Voice of the Soul.json @@ -0,0 +1,96 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1034519, + "Position": { + "X": 101.15198, + "Y": -3.8577113E-14, + "Z": 103.6239 + }, + "StopDistance": 7, + "TerritoryId": 857, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "TerritoryId": 857, + "InteractionType": "Duty", + "ContentFinderConditionId": 751 + } + ] + }, + { + "Sequence": 2 + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 857, + "InteractionType": "Duty", + "ContentFinderConditionId": 758 + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1034521, + "Position": { + "X": -8.163635, + "Y": -2.4984214, + "Z": 11.734131 + }, + "StopDistance": 5, + "TerritoryId": 878, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1034520, + "Position": { + "X": -7.7974243, + "Y": -2.4984214, + "Z": 11.337402 + }, + "StopDistance": 5, + "TerritoryId": 878, + "InteractionType": "Say", + "ChatMessage": { + "Key": "TEXT_LUCKRA304_03978_SAYTODO_000_160" + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1034521, + "Position": { + "X": -8.163635, + "Y": -2.4984214, + "Z": 11.734131 + }, + "StopDistance": 5, + "TerritoryId": 878, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Raid Quests/3979_Where I Belong.json b/QuestPaths/5.x - Shadowbringers/Raid Quests/3979_Where I Belong.json new file mode 100644 index 00000000..98da6980 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Raid Quests/3979_Where I Belong.json @@ -0,0 +1,65 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1034522, + "Position": { + "X": -7.0039062, + "Y": -2.4980054, + "Z": 21.591492 + }, + "StopDistance": 7, + "TerritoryId": 878, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1034508, + "Position": { + "X": 380.66675, + "Y": -64.28985, + "Z": 510.58203 + }, + "StopDistance": 5, + "TerritoryId": 815, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 268.15204, + "Y": 7.1558266, + "Z": -237.94643 + }, + "TerritoryId": 815, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Amh Araeng - Mord Souq", + "Fly": true + }, + { + "DataId": 1032715, + "Position": { + "X": 265.3086, + "Y": 7.1558266, + "Z": -237.81189 + }, + "StopDistance": 4, + "TerritoryId": 815, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3267_Traditions and Travails.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3267_Traditions and Travails.json index 10e0e76d..3739e9d0 100644 --- a/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3267_Traditions and Travails.json +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3267_Traditions and Travails.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "Cacahuetes", "QuestSequence": [ { "Sequence": 0, @@ -14,7 +13,93 @@ "Z": 209.88782 }, "TerritoryId": 819, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] Musica Universalis Markets" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1029999, + "Position": { + "X": 346.66968, + "Y": 3.2878497, + "Z": 177.17249 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "AetheryteShortcut": "Lakeland - Fort Jobb", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 340.6667, + "Y": 3.0521033, + "Z": 208.3552 + }, + "TerritoryId": 813, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 10865 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1030000, + "Position": { + "X": 341.02393, + "Y": 3.5819468, + "Z": 198.32141 + }, + "TerritoryId": 813, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1031158, + "Position": { + "X": -26.657532, + "Y": 3.999815, + "Z": 209.88782 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] Musica Universalis Markets" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "NextQuestId": 3268 } ] } diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3268_Affronts and Allies.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3268_Affronts and Allies.json new file mode 100644 index 00000000..45951587 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3268_Affronts and Allies.json @@ -0,0 +1,129 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1031158, + "Position": { + "X": -26.657532, + "Y": 3.999815, + "Z": 209.88782 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] Musica Universalis Markets" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030004, + "Position": { + "X": 689.1127, + "Y": 30.11682, + "Z": 278.85852 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "AetheryteShortcut": "Kholusia - Stilltide" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2009999, + "Position": { + "X": 529.3812, + "Y": 11.9782715, + "Z": 370.83997 + }, + "TerritoryId": 814, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 10866 + ], + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2010000, + "Position": { + "X": 342.48877, + "Y": 16.55597, + "Z": 454.24573 + }, + "TerritoryId": 814, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 10867 + ], + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1030006, + "Position": { + "X": 181.59753, + "Y": 33.636906, + "Z": 177.47766 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1031158, + "Position": { + "X": -26.657532, + "Y": 3.999815, + "Z": 209.88782 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] Musica Universalis Markets" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "NextQuestId": 3269 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3269_The Scientific Method.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3269_The Scientific Method.json new file mode 100644 index 00000000..455b0938 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3269_The Scientific Method.json @@ -0,0 +1,128 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1031158, + "Position": { + "X": -26.657532, + "Y": 3.999815, + "Z": 209.88782 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] Musica Universalis Markets" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030012, + "Position": { + "X": 279.469, + "Y": 1.4685827, + "Z": -281.94098 + }, + "TerritoryId": 815, + "InteractionType": "Interact", + "AetheryteShortcut": "Amh Araeng - Mord Souq" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2010002, + "Position": { + "X": 279.65198, + "Y": 1.4800415, + "Z": -282.7345 + }, + "StopDistance": 4, + "TerritoryId": 815, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKBA221_03269_Q1_000_000", + "Answer": "TEXT_LUCKBA221_03269_A1_000_002" + } + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1030013, + "Position": { + "X": 612.3292, + "Y": -25.655535, + "Z": -36.66742 + }, + "TerritoryId": 815, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1030014, + "Position": { + "X": 614.46545, + "Y": -25.7535, + "Z": -35.6604 + }, + "StopDistance": 4, + "TerritoryId": 815, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1031158, + "Position": { + "X": -26.657532, + "Y": 3.999815, + "Z": 209.88782 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] Musica Universalis Markets" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "NextQuestId": 3270 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3270_The Lost and the Found.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3270_The Lost and the Found.json new file mode 100644 index 00000000..ed82d676 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3270_The Lost and the Found.json @@ -0,0 +1,129 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "AUTHOR", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1031158, + "Position": { + "X": -26.657532, + "Y": 3.999815, + "Z": 209.88782 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] Musica Universalis Markets" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030015, + "Position": { + "X": -83.05487, + "Y": -19.061518, + "Z": 309.83435 + }, + "TerritoryId": 817, + "InteractionType": "Interact", + "AetheryteShortcut": "Rak'tika - Slitherbough" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2010003, + "Position": { + "X": 263.9048, + "Y": 12.436096, + "Z": 103.990234 + }, + "TerritoryId": 817, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 10950 + ], + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2010004, + "Position": { + "X": 446.0669, + "Y": 8.041443, + "Z": 123.03345 + }, + "TerritoryId": 817, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 10869 + ], + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1030017, + "Position": { + "X": 633.99695, + "Y": 24.12675, + "Z": 59.861084 + }, + "TerritoryId": 817, + "InteractionType": "SinglePlayerDuty", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1031158, + "Position": { + "X": -26.657532, + "Y": 3.999815, + "Z": 209.88782 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] Musica Universalis Markets" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "NextQuestId": 3271 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3271_Never to Return.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3271_Never to Return.json new file mode 100644 index 00000000..193007ed --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3271_Never to Return.json @@ -0,0 +1,80 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "AUTHOR", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1031158, + "Position": { + "X": -26.657532, + "Y": 3.999815, + "Z": 209.88782 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] Musica Universalis Markets" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030021, + "Position": { + "X": -456.6568, + "Y": 417.12558, + "Z": -597.1008 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "AetheryteShortcut": "Kholusia - Tomra" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1030022, + "Position": { + "X": -355.55048, + "Y": 415.2497, + "Z": -677.9431 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030021, + "Position": { + "X": -456.6568, + "Y": 417.12558, + "Z": -597.1008 + }, + "TerritoryId": 814, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Kholusia - Tomra", + "NextQuestId": 3272 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3272_The Soul of Temperance.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3272_The Soul of Temperance.json new file mode 100644 index 00000000..97c96a65 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Healer/3272_The Soul of Temperance.json @@ -0,0 +1,138 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Cacahuetes", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030021, + "Position": { + "X": -456.6568, + "Y": 417.12558, + "Z": -597.1008 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Kholusia - Tomra", + "SkipConditions": { + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010006, + "Position": { + "X": -115.31244, + "Y": 428.18335, + "Z": -621.4542 + }, + "TerritoryId": 814, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 10870 + ], + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2010007, + "Position": { + "X": 21.194763, + "Y": 348.89746, + "Z": -251.88074 + }, + "TerritoryId": 814, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 10871 + ], + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1030035, + "Position": { + "X": -650.35474, + "Y": 352.45102, + "Z": -129.01508 + }, + "TerritoryId": 814, + "InteractionType": "SinglePlayerDuty", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1030038, + "Position": { + "X": -650.35474, + "Y": 352.45102, + "Z": -129.01508 + }, + "TerritoryId": 814, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1030038, + "Position": { + "X": -650.35474, + "Y": 352.45102, + "Z": -129.01508 + }, + "TerritoryId": 814, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030039, + "Position": { + "X": -26.657532, + "Y": 3.999815, + "Z": 209.88782 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] Musica Universalis Markets" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3623_Hollow Pursuits.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3623_Hollow Pursuits.json index 212b5074..83dc2b97 100644 --- a/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3623_Hollow Pursuits.json +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3623_Hollow Pursuits.json @@ -13,7 +13,17 @@ "Z": 201.9226 }, "TerritoryId": 819, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] Musica Universalis Markets" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3624_A Voice from the Void.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3624_A Voice from the Void.json index c2dced21..5d58303b 100644 --- a/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3624_A Voice from the Void.json +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3624_A Voice from the Void.json @@ -23,7 +23,8 @@ "Y": 7.1558266, "Z": -249.1341 }, - "MaximumDistance": 100 + "MaximumDistance": 100, + "TerritoryId": 815 } } } diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3625_Echoes of the Past.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3625_Echoes of the Past.json index 9b7b8dde..2eeb073d 100644 --- a/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3625_Echoes of the Past.json +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3625_Echoes of the Past.json @@ -23,7 +23,8 @@ "Y": 7.1558266, "Z": -249.1341 }, - "MaximumDistance": 100 + "MaximumDistance": 100, + "TerritoryId": 815 } } } diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3626_Nyelbert's Lament.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3626_Nyelbert's Lament.json index 43368dbd..ca1f720b 100644 --- a/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3626_Nyelbert's Lament.json +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3626_Nyelbert's Lament.json @@ -23,7 +23,8 @@ "Y": 7.1558266, "Z": -249.1341 }, - "MaximumDistance": 100 + "MaximumDistance": 100, + "TerritoryId": 815 } } } diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3627_Taynor's Training Day.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3627_Taynor's Training Day.json index 370c4fc1..45c3f672 100644 --- a/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3627_Taynor's Training Day.json +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3627_Taynor's Training Day.json @@ -23,7 +23,8 @@ "Y": 7.1558266, "Z": -249.1341 }, - "MaximumDistance": 100 + "MaximumDistance": 100, + "TerritoryId": 815 } } } diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3628_A Tearful Reunion.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3628_A Tearful Reunion.json index 1895ba16..f5e70ecf 100644 --- a/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3628_A Tearful Reunion.json +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Magical Ranged/3628_A Tearful Reunion.json @@ -23,7 +23,8 @@ "Y": 7.1558266, "Z": -249.1341 }, - "MaximumDistance": 100 + "MaximumDistance": 100, + "TerritoryId": 815 } } } diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3273_No Greater Sport.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3273_No Greater Sport.json new file mode 100644 index 00000000..e839a530 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3273_No Greater Sport.json @@ -0,0 +1,123 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Fifi", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030126, + "Position": { + "X": -18.143005, + "Y": 3.9998174, + "Z": 235.40088 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Pendants" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030127, + "Position": { + "X": 200.12195, + "Y": -0.39141315, + "Z": 389.45593 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Crystarium] The Pendants", + "[Crystarium] Tessellation (Lakeland)" + ], + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2010396, + "Position": { + "X": 195.48328, + "Y": -0.7477417, + "Z": 370.93152 + }, + "TerritoryId": 813, + "InteractionType": "UseItem", + "ItemId": 2002718 + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2010397, + "Position": { + "X": 203.90625, + "Y": -0.5340576, + "Z": 389.82214 + }, + "TerritoryId": 813, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 10872 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1031013, + "Position": { + "X": 200.09155, + "Y": -0.39049676, + "Z": 389.4254 + }, + "StopDistance": 5, + "TerritoryId": 813, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030964, + "Position": { + "X": -18.143005, + "Y": 3.9998174, + "Z": 235.40088 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "NextQuestId": 3274, + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Pendants" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3274_Vengeance in Defeat.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3274_Vengeance in Defeat.json new file mode 100644 index 00000000..d357defc --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3274_Vengeance in Defeat.json @@ -0,0 +1,121 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Fifi", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030964, + "Position": { + "X": -18.143005, + "Y": 3.9998174, + "Z": 235.40088 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Pendants" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030130, + "Position": { + "X": 469.0775, + "Y": -32.782784, + "Z": -288.44135 + }, + "TerritoryId": 815, + "InteractionType": "Interact", + "AetheryteShortcut": "Amh Araeng - Mord Souq", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2010399, + "Position": { + "X": 613.39734, + "Y": -33.585205, + "Z": -180.95679 + }, + "TerritoryId": 815, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2010400, + "Position": { + "X": 536.9192, + "Y": -33.737732, + "Z": 38.83423 + }, + "TerritoryId": 815, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 10873 + ], + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2010401, + "Position": { + "X": 469.0775, + "Y": -32.791687, + "Z": -288.44135 + }, + "TerritoryId": 815, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030964, + "Position": { + "X": -18.143005, + "Y": 3.9998174, + "Z": 235.40088 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "NextQuestId": 3275, + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Pendants" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3275_Freedom from Privilege.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3275_Freedom from Privilege.json new file mode 100644 index 00000000..8ee624bf --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3275_Freedom from Privilege.json @@ -0,0 +1,140 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Fifi", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030964, + "Position": { + "X": -18.143005, + "Y": 3.9998174, + "Z": 235.40088 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Pendants" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030135, + "Position": { + "X": -251.42291, + "Y": 22.19962, + "Z": 325.7953 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "AetheryteShortcut": "Kholusia - Wright", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2010402, + "Position": { + "X": -550.7744, + "Y": 29.160034, + "Z": 363.4851 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2010403, + "Position": { + "X": -550.98804, + "Y": 41.33667, + "Z": 252.24683 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1030136, + "Position": { + "X": -192.58417, + "Y": 26.771265, + "Z": 248.46265 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1030140, + "Position": { + "X": 67.64319, + "Y": 82.001656, + "Z": -53.330322 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "AetheryteShortcut": "Eulmore" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030964, + "Position": { + "X": -18.143005, + "Y": 3.9998174, + "Z": 235.40088 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Pendants" + ], + "NextQuestId": 3276, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKBA321_03275_Q1_000_000", + "Answer": "TEXT_LUCKBA321_03275_A1_000_001" + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3276_The Hunter's Legacy.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3276_The Hunter's Legacy.json new file mode 100644 index 00000000..011fde1c --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3276_The Hunter's Legacy.json @@ -0,0 +1,83 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Fifi", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030964, + "Position": { + "X": -18.143005, + "Y": 3.9998174, + "Z": 235.40088 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Pendants" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030144, + "Position": { + "X": 94.68213, + "Y": 37.377014, + "Z": 611.1085 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Kholusia - Wright" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1030146, + "Position": { + "X": -190.1427, + "Y": 12.748831, + "Z": 591.6686 + }, + "TerritoryId": 817, + "InteractionType": "SinglePlayerDuty", + "AetheryteShortcut": "Rak'tika - Slitherbough", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030144, + "Position": { + "X": 94.68213, + "Y": 37.377014, + "Z": 611.1085 + }, + "TerritoryId": 814, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Kholusia - Wright", + "Fly": true, + "NextQuestId": 3277 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3277_Fellowship Restored.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3277_Fellowship Restored.json new file mode 100644 index 00000000..d020cd4c --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3277_Fellowship Restored.json @@ -0,0 +1,119 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Fifi", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030145, + "Position": { + "X": 93.461426, + "Y": 37.43559, + "Z": 611.50525 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Kholusia - Wright", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "Fly": true + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010405, + "Position": { + "X": -33.707214, + "Y": 3.982544, + "Z": 205.70679 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Pendants" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1027323, + "Position": { + "X": -42.893127, + "Y": 3.9998171, + "Z": 242.08435 + }, + "TerritoryId": 819, + "InteractionType": "Interact" + }, + { + "DataId": 1027238, + "Position": { + "X": -15.487976, + "Y": 3.9998171, + "Z": 215.3811 + }, + "TerritoryId": 819, + "InteractionType": "Interact" + }, + { + "DataId": 1030147, + "Position": { + "X": 0.59503174, + "Y": 3.9998174, + "Z": 209.27734 + }, + "TerritoryId": 819, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1030148, + "Position": { + "X": -246.57056, + "Y": 10.152376, + "Z": 678.21765 + }, + "TerritoryId": 817, + "InteractionType": "Interact", + "AetheryteShortcut": "Rak'tika - Slitherbough", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030145, + "Position": { + "X": 93.461426, + "Y": 37.43559, + "Z": 611.50525 + }, + "StopDistance": 1, + "TerritoryId": 814, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Kholusia - Wright", + "Fly": true, + "NextQuestId": 3278 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3278_Courage Born of Fear.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3278_Courage Born of Fear.json new file mode 100644 index 00000000..51533dbb --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Physical/3278_Courage Born of Fear.json @@ -0,0 +1,125 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Fifi", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030144, + "Position": { + "X": 94.68213, + "Y": 37.377014, + "Z": 611.1085 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Kholusia - Wright", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "Fly": true + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1027253, + "Position": { + "X": 17.502075, + "Y": 19.999794, + "Z": -190.41736 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Crystalline Mean" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2010406, + "Position": { + "X": -17.013855, + "Y": 4.470825, + "Z": 234.97363 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Crystarium] The Crystalline Mean", + "[Crystarium] The Pendants" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1030990, + "Position": { + "X": -246.57056, + "Y": 10.152376, + "Z": 678.21765 + }, + "TerritoryId": 817, + "InteractionType": "SinglePlayerDuty", + "AetheryteShortcut": "Rak'tika - Slitherbough", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1030145, + "Position": { + "X": 93.461426, + "Y": 37.43559, + "Z": 611.50525 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Kholusia - Wright" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030964, + "Position": { + "X": -18.143005, + "Y": 3.9998174, + "Z": 235.40088 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Pendants" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3243_The Man with Too Many Scars.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3243_The Man with Too Many Scars.json index be65d1d6..e91554f7 100644 --- a/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3243_The Man with Too Many Scars.json +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3243_The Man with Too Many Scars.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -14,7 +13,166 @@ "Z": 251.75854 }, "TerritoryId": 819, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Pendants" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1029890, + "Position": { + "X": 738.796, + "Y": 22.936495, + "Z": 406.21033 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Crystarium] The Pendants", + "[Crystarium] Tessellation (Lakeland)" + ], + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 447.0961, + "Y": 13.008003, + "Z": 210.91484 + }, + "StopDistance": 0.25, + "TerritoryId": 813, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": 448.69727, + "Y": 13.393556, + "Z": 205.00368 + } + }, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "DataId": 2009942, + "Position": { + "X": 453.4828, + "Y": 13.626221, + "Z": 189.44067 + }, + "TerritoryId": 813, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 10853 + ], + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1029891, + "Position": { + "X": 445.27344, + "Y": 13.409448, + "Z": 204.42505 + }, + "TerritoryId": 813, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 412.249, + "Y": 7.472949, + "Z": 187.34154 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "DisableNavmesh": true, + "Mount": true, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "DataId": 2009943, + "Position": { + "X": 633.6614, + "Y": 21.377869, + "Z": -267.93323 + }, + "TerritoryId": 813, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 10854 + ], + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1029892, + "Position": { + "X": 635.1262, + "Y": 20.257477, + "Z": -249.22565 + }, + "TerritoryId": 813, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1029889, + "Position": { + "X": -35.385742, + "Y": 3.9998174, + "Z": 251.75854 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Pendants" + ], + "NextQuestId": 3244 } ] } diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3244_Shaped by Tragedy.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3244_Shaped by Tragedy.json new file mode 100644 index 00000000..a77ac9b2 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3244_Shaped by Tragedy.json @@ -0,0 +1,108 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1029889, + "Position": { + "X": -35.385742, + "Y": 3.9998174, + "Z": 251.75854 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Pendants" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1029893, + "Position": { + "X": -248.34064, + "Y": 21.086334, + "Z": 346.0287 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "AetheryteShortcut": "Kholusia - Wright" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1029895, + "Position": { + "X": -317.43347, + "Y": 19.407524, + "Z": 404.3794 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1029896, + "Position": { + "X": -311.57397, + "Y": 17.772081, + "Z": 443.8086 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "Fly": true, + "Mount": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1029893, + "Position": { + "X": -248.34064, + "Y": 21.086334, + "Z": 346.0287 + }, + "TerritoryId": 814, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 3245 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3245_Defined by Loss.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3245_Defined by Loss.json new file mode 100644 index 00000000..900f8600 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3245_Defined by Loss.json @@ -0,0 +1,250 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1029893, + "Position": { + "X": -248.34064, + "Y": 21.086334, + "Z": 346.0287 + }, + "TerritoryId": 814, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Kholusia - Wright", + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": -248.34064, + "Y": 21.086334, + "Z": 346.0287 + }, + "TerritoryId": 814, + "MaximumDistance": 100 + } + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 173.40976, + "Y": 58.977684, + "Z": 883.3417 + }, + "TerritoryId": 814, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "AetheryteUnlocked": "Eulmore", + "InTerritory": [ + 820 + ] + } + } + }, + { + "DataId": 1029899, + "Position": { + "X": 34.561646, + "Y": 83.001076, + "Z": -67.00244 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "AetheryteShortcut": "Eulmore", + "SkipConditions": { + "AetheryteShortcutIf": { + "AetheryteLocked": "Eulmore" + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1029893, + "Position": { + "X": -248.34064, + "Y": 21.086334, + "Z": 346.0287 + }, + "TerritoryId": 814, + "InteractionType": "Interact", + "AetheryteShortcut": "Kholusia - Wright" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 271.6878, + "Y": 7.1558237, + "Z": -197.58272 + }, + "TerritoryId": 815, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Amh Araeng - Mord Souq" + }, + { + "DataId": 1029898, + "Position": { + "X": 270.37463, + "Y": 7.1558247, + "Z": -196.30737 + }, + "TerritoryId": 815, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1027876, + "Position": { + "X": 314.16797, + "Y": 1.4912677, + "Z": -255.60394 + }, + "TerritoryId": 815, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1029951, + "Position": { + "X": 303.82227, + "Y": 1.4685826, + "Z": -292.89697 + }, + "TerritoryId": 815, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1029953, + "Position": { + "X": 241.19922, + "Y": 4.0297, + "Z": -289.601 + }, + "TerritoryId": 815, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 2009944, + "Position": { + "X": 476.18823, + "Y": -44.87683, + "Z": 229.96863 + }, + "TerritoryId": 815, + "InteractionType": "Interact", + "AetheryteShortcut": "Amh Araeng - Inn at Journey's Head", + "Fly": true + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "Position": { + "X": 555.85315, + "Y": -50.899147, + "Z": 322.2599 + }, + "StopDistance": 0.25, + "TerritoryId": 815, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 10855 + ] + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1029957, + "Position": { + "X": 293.04944, + "Y": -42.796906, + "Z": 251.75854 + }, + "TerritoryId": 815, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 296.43002, + "Y": 1.4685829, + "Z": -289.11447 + }, + "TerritoryId": 815, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Amh Araeng - Mord Souq" + }, + { + "DataId": 1029959, + "Position": { + "X": 295.27722, + "Y": 1.4685827, + "Z": -290.18085 + }, + "TerritoryId": 815, + "InteractionType": "CompleteQuest", + "NextQuestId": 3246 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3246_The Princess and Her Knight.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3246_The Princess and Her Knight.json new file mode 100644 index 00000000..a11643db --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3246_The Princess and Her Knight.json @@ -0,0 +1,183 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": 296.43002, + "Y": 1.4685829, + "Z": -289.11447 + }, + "TerritoryId": 815, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Amh Araeng - Mord Souq", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 296.43002, + "Y": 1.4685829, + "Z": -289.11447 + }, + "TerritoryId": 815, + "MaximumDistance": 100 + } + } + } + }, + { + "DataId": 1029959, + "Position": { + "X": 295.27722, + "Y": 1.4685827, + "Z": -290.18085 + }, + "TerritoryId": 815, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1029960, + "Position": { + "X": -393.66754, + "Y": 52.333755, + "Z": 497.15417 + }, + "TerritoryId": 816, + "InteractionType": "Interact", + "AetheryteShortcut": "Il Mheg - Lydha Lran", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKBA131_03246_Q2_000_000", + "Answer": "TEXT_LUCKBA131_03246_A2_000_001" + } + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1027671, + "Position": { + "X": -33.12738, + "Y": 105.68533, + "Z": -879.9115 + }, + "TerritoryId": 816, + "InteractionType": "Interact", + "AetheryteShortcut": "Il Mheg - Pla Enni", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1027670, + "Position": { + "X": 32.028687, + "Y": 101.900696, + "Z": -857.87744 + }, + "TerritoryId": 816, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1029961, + "Position": { + "X": -93.736206, + "Y": 101.44155, + "Z": -834.9279 + }, + "TerritoryId": 816, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1029963, + "Position": { + "X": 61.020752, + "Y": 100.95007, + "Z": -872.4651 + }, + "TerritoryId": 816, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 2009946, + "Position": { + "X": 395.16284, + "Y": 62.05847, + "Z": -516.22797 + }, + "TerritoryId": 816, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 10856 + ], + "AetheryteShortcut": "Il Mheg - Wolekdorf", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1029963, + "Position": { + "X": 61.020752, + "Y": 100.95007, + "Z": -872.4651 + }, + "TerritoryId": 816, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Il Mheg - Pla Enni", + "Fly": true, + "NextQuestId": 3247 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3247_The Hardened Heart.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3247_The Hardened Heart.json new file mode 100644 index 00000000..515eb013 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3247_The Hardened Heart.json @@ -0,0 +1,69 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1029963, + "Position": { + "X": 61.020752, + "Y": 100.95007, + "Z": -872.4651 + }, + "TerritoryId": 816, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Il Mheg - Pla Enni", + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 61.020752, + "Y": 100.95007, + "Z": -872.4651 + }, + "TerritoryId": 816, + "MaximumDistance": 100 + } + } + }, + "Fly": true + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1029967, + "Position": { + "X": -68.40625, + "Y": 105.29414, + "Z": -251.88074 + }, + "TerritoryId": 816, + "InteractionType": "SinglePlayerDuty", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1029963, + "Position": { + "X": 61.020752, + "Y": 100.95007, + "Z": -872.4651 + }, + "TerritoryId": 816, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Il Mheg - Pla Enni", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3248_To Have Loved and Lost.json b/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3248_To Have Loved and Lost.json new file mode 100644 index 00000000..9758c825 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Role Quests/Tank/3248_To Have Loved and Lost.json @@ -0,0 +1,102 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1029963, + "Position": { + "X": 61.020752, + "Y": 100.95007, + "Z": -872.4651 + }, + "TerritoryId": 816, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Il Mheg - Pla Enni", + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": 61.020752, + "Y": 100.95007, + "Z": -872.4651 + }, + "TerritoryId": 816, + "MaximumDistance": 100 + } + } + }, + "Fly": true + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -823.0134, + "Y": 22.900805, + "Z": -55.223766 + }, + "TerritoryId": 816, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2009948, + "Position": { + "X": -824.88745, + "Y": 23.11737, + "Z": -56.443176 + }, + "TerritoryId": 816, + "InteractionType": "SinglePlayerDuty", + "ItemId": 2002569 + } + ] + }, + { + "Sequence": 2 + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1029963, + "Position": { + "X": 61.020752, + "Y": 100.95007, + "Z": -872.4651 + }, + "TerritoryId": 816, + "InteractionType": "Interact", + "AetheryteShortcut": "Il Mheg - Pla Enni", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1029889, + "Position": { + "X": -35.385742, + "Y": 3.9998174, + "Z": 251.75854 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Pendants" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3343_A Cry for Help.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3343_A Cry for Help.json new file mode 100644 index 00000000..30780187 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3343_A Cry for Help.json @@ -0,0 +1,115 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1027827, + "Position": { + "X": 105.02783, + "Y": 0.49999997, + "Z": -145.70844 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1027254, + "Position": { + "X": -37.857666, + "Y": -0.5500218, + "Z": -61.20398 + }, + "TerritoryId": 819, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1027817, + "Position": { + "X": -118.425354, + "Y": -47.50666, + "Z": -181.17041 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Crystarium] The Dossal Gate", + "[Crystarium] The Cabinet of Curiosity" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2010022, + "Position": { + "X": -152.08673, + "Y": -45.88391, + "Z": -185.0462 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1030257, + "Position": { + "X": -169.3294, + "Y": -45.8779, + "Z": -209.85736 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1027254, + "Position": { + "X": -37.857666, + "Y": -0.5500218, + "Z": -61.20398 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Crystarium] The Cabinet of Curiosity", + "[Crystarium] The Dossal Gate" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3344_Rate and Review.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3344_Rate and Review.json new file mode 100644 index 00000000..249b9eef --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3344_Rate and Review.json @@ -0,0 +1,149 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1027244, + "Position": { + "X": 76.157715, + "Y": 0.0889954, + "Z": -44.26648 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1027316, + "Position": { + "X": -127.30603, + "Y": 0, + "Z": -109.48352 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Crystarium] The Dossal Gate", + "[Crystarium] Temenos Rookery" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1027227, + "Position": { + "X": -65.78168, + "Y": -27.23603, + "Z": -272.99915 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Crystarium] Temenos Rookery", + "[Crystarium] The Cabinet of Curiosity" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + }, + { + "DataId": 1030258, + "Position": { + "X": 65.659546, + "Y": 36.197685, + "Z": -148.54657 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Crystarium] The Cabinet of Curiosity", + "[Crystarium] The Amaro Launch" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "Position": { + "X": 80.6178, + "Y": 35.999687, + "Z": -146.81993 + }, + "StopDistance": 0.5, + "TerritoryId": 819, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": 98.63616, + "Y": 0.5, + "Z": -153.71947 + } + } + }, + { + "DataId": 1027826, + "Position": { + "X": 89.15845, + "Y": 0.49999997, + "Z": -145.4643 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1027244, + "Position": { + "X": 76.157715, + "Y": 0.0889954, + "Z": -44.26648 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKZA002_03344_Q1_000_051", + "Answer": "TEXT_LUCKZA002_03344_A1_000_052" + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3345_Pour One Out.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3345_Pour One Out.json new file mode 100644 index 00000000..2859c732 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3345_Pour One Out.json @@ -0,0 +1,84 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": -41.33571, + "Y": 3.9998171, + "Z": 239.88663 + }, + "TerritoryId": 819, + "InteractionType": "WalkTo" + }, + { + "DataId": 1027323, + "Position": { + "X": -42.893127, + "Y": 3.9998171, + "Z": 242.08435 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1027816, + "Position": { + "X": -20.676025, + "Y": -7.700001, + "Z": 111.77234 + }, + "TerritoryId": 819, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1029146, + "Position": { + "X": 86.74744, + "Y": 0.74016255, + "Z": 147.11218 + }, + "TerritoryId": 819, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": -41.33571, + "Y": 3.9998171, + "Z": 239.88663 + }, + "TerritoryId": 819, + "InteractionType": "WalkTo" + }, + { + "DataId": 1027323, + "Position": { + "X": -42.893127, + "Y": 3.9998171, + "Z": 242.08435 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3346_A Dirty Trick.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3346_A Dirty Trick.json new file mode 100644 index 00000000..350bf6db --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3346_A Dirty Trick.json @@ -0,0 +1,125 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1027316, + "Position": { + "X": -127.30603, + "Y": 0, + "Z": -109.48352 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2009995, + "Position": { + "X": -130.38837, + "Y": 1.1138916, + "Z": -82.84125 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2009994, + "Position": { + "X": -155.29114, + "Y": -0.015319824, + "Z": -99.38208 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2009996, + "Position": { + "X": -145.00653, + "Y": -0.045776367, + "Z": -130.5105 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1027316, + "Position": { + "X": -127.30603, + "Y": 0, + "Z": -109.48352 + }, + "TerritoryId": 819, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1028334, + "Position": { + "X": -135.33228, + "Y": -6.193295E-07, + "Z": 59.464355 + }, + "TerritoryId": 819, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1027316, + "Position": { + "X": -127.30603, + "Y": 0, + "Z": -109.48352 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3347_From a Distance.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3347_From a Distance.json new file mode 100644 index 00000000..ac694571 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3347_From a Distance.json @@ -0,0 +1,68 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1027846, + "Position": { + "X": -68.65039, + "Y": -36.750023, + "Z": -264.39313 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030259, + "Position": { + "X": -68.55884, + "Y": -27.236004, + "Z": -269.58118 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKZA005_03347_Q1_000_012", + "Answer": "TEXT_LUCKZA005_03347_A1_000_013" + }, + { + "Type": "List", + "Prompt": "TEXT_LUCKZA005_03347_Q2_000_017", + "Answer": "TEXT_LUCKZA005_03347_A2_000_019" + }, + { + "Type": "List", + "Prompt": "TEXT_LUCKZA005_03347_Q3_000_022", + "Answer": "TEXT_LUCKZA005_03347_A3_000_023" + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1027846, + "Position": { + "X": -68.65039, + "Y": -36.750023, + "Z": -264.39313 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3348_A Fitting Challenge.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3348_A Fitting Challenge.json new file mode 100644 index 00000000..9d48bc66 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3348_A Fitting Challenge.json @@ -0,0 +1,53 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1029884, + "Position": { + "X": 52.96399, + "Y": 35.999683, + "Z": -109.14783 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1029884, + "Position": { + "X": 52.96399, + "Y": 35.999683, + "Z": -109.14783 + }, + "TerritoryId": 819, + "InteractionType": "Emote", + "Emote": "battlestance" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1029884, + "Position": { + "X": 52.96399, + "Y": 35.999683, + "Z": -109.14783 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "Emote": "box" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3379_Do You Believe in Magic.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3379_Do You Believe in Magic.json new file mode 100644 index 00000000..f97bd0e7 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3379_Do You Believe in Magic.json @@ -0,0 +1,58 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1031104, + "Position": { + "X": 41.397705, + "Y": 1.7633697, + "Z": 268.635 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010499, + "Position": { + "X": 655.1765, + "Y": 57.724854, + "Z": -436.51483 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "AetheryteShortcut": "Lakeland - Fort Jobb", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1031104, + "Position": { + "X": 41.397705, + "Y": 1.7633697, + "Z": 268.635 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Pendants" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3533_Scars of War.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3533_Scars of War.json new file mode 100644 index 00000000..1a3184b7 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3533_Scars of War.json @@ -0,0 +1,98 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030679, + "Position": { + "X": 64.07251, + "Y": 1.7078, + "Z": 231.40308 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030689, + "Position": { + "X": -657.5875, + "Y": 50.950245, + "Z": -217.76147 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "AetheryteShortcut": "Lakeland - Ostall Imperative", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1027411, + "Position": { + "X": -771.1452, + "Y": 51.501152, + "Z": -212.32928 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1027382, + "Position": { + "X": -765.92664, + "Y": 61.720478, + "Z": -304.1886 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030689, + "Position": { + "X": -657.5875, + "Y": 50.950245, + "Z": -217.76147 + }, + "TerritoryId": 813, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 3534 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3564_Simple Gifts.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3564_Simple Gifts.json new file mode 100644 index 00000000..970917ae --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3564_Simple Gifts.json @@ -0,0 +1,103 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1028024, + "Position": { + "X": 78.96533, + "Y": 35.999687, + "Z": -153.27692 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1031119, + "Position": { + "X": 80.125, + "Y": 1.4901161E-08, + "Z": 190.44775 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Crystarium] The Amaro Launch", + "[Crystarium] The Pendants" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1027799, + "Position": { + "X": -74.6319, + "Y": -4.200001, + "Z": 170.00073 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1028333, + "Position": { + "X": -168.07812, + "Y": 1.490116E-08, + "Z": 96.14697 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1028024, + "Position": { + "X": 78.96533, + "Y": 35.999687, + "Z": -153.27692 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Amaro Launch" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3565_His Own Medicine.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3565_His Own Medicine.json new file mode 100644 index 00000000..a4f0cb77 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3565_His Own Medicine.json @@ -0,0 +1,81 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1027263, + "Position": { + "X": -69.5354, + "Y": -36.726383, + "Z": -282.79547 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1027254, + "Position": { + "X": -37.857666, + "Y": -0.5500218, + "Z": -61.20398 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Crystarium] The Cabinet of Curiosity", + "[Crystarium] The Dossal Gate" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -37.857666, + "Y": -0.5500218, + "Z": -61.20398 + }, + "TerritoryId": 819, + "InteractionType": "UseItem", + "ItemId": 2002756 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1027263, + "Position": { + "X": -69.5354, + "Y": -36.726383, + "Z": -282.79547 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Crystarium] The Dossal Gate", + "[Crystarium] The Cabinet of Curiosity" + ], + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKZJ002_03565_Q1_000_000", + "Answer": "TEXT_LUCKZJ002_03565_A1_000_001" + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3566_Welcome to the Future.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3566_Welcome to the Future.json new file mode 100644 index 00000000..ab66ad7b --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3566_Welcome to the Future.json @@ -0,0 +1,66 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1031036, + "Position": { + "X": 35.721313, + "Y": -4.2178183, + "Z": 150.80493 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1031037, + "Position": { + "X": 65.32385, + "Y": 31.22887, + "Z": 151.7815 + }, + "TerritoryId": 819, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 65.23219, + "Y": 31.253508, + "Z": 150.2689 + }, + "TerritoryId": 819, + "InteractionType": "Emote", + "Emote": "welcome" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1031038, + "Position": { + "X": 71.30542, + "Y": 30.758999, + "Z": 141.95471 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3567_Made, Not Born.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3567_Made, Not Born.json new file mode 100644 index 00000000..87baaddb --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3567_Made, Not Born.json @@ -0,0 +1,67 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1031059, + "Position": { + "X": 108.781494, + "Y": -3.1728092E-11, + "Z": -105.760315 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1031060, + "Position": { + "X": -148.36353, + "Y": 1.4901161E-08, + "Z": 200.42712 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Crystarium] The Dossal Gate", + "[Crystarium] The Pendants" + ], + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKZJ004_03567_Q1_000_000", + "Answer": "TEXT_LUCKZJ004_03567_A1_000_002" + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1031059, + "Position": { + "X": 108.781494, + "Y": -3.1728092E-11, + "Z": -105.760315 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Dossal Gate" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3568_The Poet Doesn't Know It.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3568_The Poet Doesn't Know It.json new file mode 100644 index 00000000..a99380e6 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Crystarium/3568_The Poet Doesn't Know It.json @@ -0,0 +1,123 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1031064, + "Position": { + "X": 62.42456, + "Y": 27.999973, + "Z": -113.75604 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1031427, + "Position": { + "X": 10.8185425, + "Y": -1.4707987E-11, + "Z": -56.26001 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Crystarium] The Amaro Launch", + "[Crystarium] The Dossal Gate" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1027252, + "Position": { + "X": -117.60132, + "Y": 38.614765, + "Z": 236.04175 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Crystarium] The Dossal Gate", + "[Crystarium] The Pendants" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1027260, + "Position": { + "X": -49.515564, + "Y": -36.72638, + "Z": -271.4123 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Cabinet of Curiosity" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1031064, + "Position": { + "X": 62.42456, + "Y": 27.999973, + "Z": -113.75604 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Crystarium] The Cabinet of Curiosity", + "[Crystarium] The Amaro Launch" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1031065, + "Position": { + "X": 101.426636, + "Y": 20.728992, + "Z": 101.8844 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Crystarium] The Amaro Launch", + "[Crystarium] Musica Universalis Markets" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3516_My Heart Will (Not) Go On.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3516_My Heart Will (Not) Go On.json new file mode 100644 index 00000000..0b6d8245 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3516_My Heart Will (Not) Go On.json @@ -0,0 +1,79 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030455, + "Position": { + "X": 54.09314, + "Y": 83.001076, + "Z": -74.540344 + }, + "TerritoryId": 820, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030456, + "Position": { + "X": 63.279175, + "Y": -4.0096626, + "Z": 145.28113 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Eulmore] Aetheryte Plaza", + "[Eulmore] Southeast Derelicts" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1030455, + "Position": { + "X": 54.09314, + "Y": 83.001076, + "Z": -74.540344 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Eulmore] Southeast Derelicts", + "[Eulmore] Aetheryte Plaza" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030457, + "Position": { + "X": 63.370728, + "Y": -4.158061, + "Z": 143.93835 + }, + "TerritoryId": 820, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Eulmore] Aetheryte Plaza", + "[Eulmore] Southeast Derelicts" + ], + "NextQuestId": 3517 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3517_Near, Far, Wherever You Are.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3517_Near, Far, Wherever You Are.json new file mode 100644 index 00000000..e704f0ac --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3517_Near, Far, Wherever You Are.json @@ -0,0 +1,78 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030456, + "Position": { + "X": 63.279175, + "Y": -4.0096626, + "Z": 145.28113 + }, + "TerritoryId": 820, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 383.55106, + "Y": 4.5417395, + "Z": 602.9981 + }, + "StopDistance": 0.5, + "TerritoryId": 814, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 11087 + ], + "AetheryteShortcut": "Kholusia - Stilltide", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1030458, + "Position": { + "X": 379.84277, + "Y": 5.363723, + "Z": 600.3967 + }, + "StopDistance": 7, + "TerritoryId": 814, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030463, + "Position": { + "X": -14.847046, + "Y": -6.9869757, + "Z": -124.4068 + }, + "TerritoryId": 820, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Eulmore", + "AethernetShortcut": [ + "[Eulmore] Aetheryte Plaza", + "[Eulmore] The Glory Gate" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3518_The Invisible Hand.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3518_The Invisible Hand.json new file mode 100644 index 00000000..512db317 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3518_The Invisible Hand.json @@ -0,0 +1,107 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1029983, + "Position": { + "X": -56.565247, + "Y": -4.821, + "Z": -88.059875 + }, + "TerritoryId": 820, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1027606, + "Position": { + "X": -50.247986, + "Y": -4.820967, + "Z": -94.65173 + }, + "StopDistance": 7, + "TerritoryId": 820, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1029980, + "Position": { + "X": -81.59003, + "Y": -0.80081946, + "Z": 40.878906 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1027604, + "Position": { + "X": 76.3103, + "Y": -8.115, + "Z": -46.219604 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Eulmore] Nightsoil Pots", + "[Eulmore] The Glory Gate" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1029983, + "Position": { + "X": -56.565247, + "Y": -4.821, + "Z": -88.059875 + }, + "TerritoryId": 820, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKZH008_03518_Q1_000_000", + "Answer": "TEXT_LUCKZH008_03518_A1_000_003" + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3519_Scattered to the Winds.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3519_Scattered to the Winds.json new file mode 100644 index 00000000..0c28ea91 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3519_Scattered to the Winds.json @@ -0,0 +1,103 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1027550, + "Position": { + "X": 52.536743, + "Y": 82.8351, + "Z": 13.595764 + }, + "TerritoryId": 820, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010114, + "Position": { + "X": 81.19324, + "Y": -10.421997, + "Z": 48.8136 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Eulmore] Aetheryte Plaza", + "[Eulmore] Southeast Derelicts" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2010116, + "Position": { + "X": 94.40759, + "Y": -8.377258, + "Z": -57.358704 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 2010115, + "Position": { + "X": -30.167114, + "Y": -11.917358, + "Z": 106.43164 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1027550, + "Position": { + "X": 52.536743, + "Y": 82.8351, + "Z": 13.595764 + }, + "TerritoryId": 820, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Eulmore] Nightsoil Pots", + "[Eulmore] Aetheryte Plaza" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3520_One Good Meal.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3520_One Good Meal.json new file mode 100644 index 00000000..f426d35d --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3520_One Good Meal.json @@ -0,0 +1,108 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030465, + "Position": { + "X": 19.272095, + "Y": 36, + "Z": -4.409851 + }, + "TerritoryId": 820, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1027537, + "Position": { + "X": -3.982666, + "Y": 23.1, + "Z": 27.145752 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1027554, + "Position": { + "X": 27.54248, + "Y": 82.78693, + "Z": 32.303345 + }, + "StopDistance": 7, + "TerritoryId": 820, + "InteractionType": "Interact", + "AetheryteShortcut": "Eulmore", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1027593, + "Position": { + "X": 78.11096, + "Y": -10.682121, + "Z": 73.28906 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Eulmore] Aetheryte Plaza", + "[Eulmore] Southeast Derelicts" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030465, + "Position": { + "X": 19.272095, + "Y": 36, + "Z": -4.409851 + }, + "TerritoryId": 820, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKZH010_03520_Q1_000_000", + "Answer": "TEXT_LUCKZH010_03520_A1_000_001" + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3521_Little and Late.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3521_Little and Late.json new file mode 100644 index 00000000..22f7ba42 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3521_Little and Late.json @@ -0,0 +1,59 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030467, + "Position": { + "X": -4.348877, + "Y": 6, + "Z": -30.319702 + }, + "TerritoryId": 820, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030466, + "Position": { + "X": 40.05493, + "Y": -10.468191, + "Z": 73.258545 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Eulmore] The Glory Gate", + "[Eulmore] Southeast Derelicts" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030467, + "Position": { + "X": -4.348877, + "Y": 6, + "Z": -30.319702 + }, + "TerritoryId": 820, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Eulmore] Southeast Derelicts", + "[Eulmore] The Glory Gate" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3522_Children of the Derelicts.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3522_Children of the Derelicts.json new file mode 100644 index 00000000..49bac156 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3522_Children of the Derelicts.json @@ -0,0 +1,117 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1027617, + "Position": { + "X": 45.944946, + "Y": -13.795549, + "Z": -118.0896 + }, + "TerritoryId": 820, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030471, + "Position": { + "X": 88.05969, + "Y": -7.2009244, + "Z": -73.71637 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + }, + { + "DataId": 1030470, + "Position": { + "X": 98.039185, + "Y": -17.955051, + "Z": -77.10382 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1030468, + "Position": { + "X": 39.53601, + "Y": -23.440458, + "Z": 102.4032 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1030469, + "Position": { + "X": -112.16907, + "Y": -14.506645, + "Z": -49.515564 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Eulmore] Southeast Derelicts", + "[Eulmore] Nightsoil Pots" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1027617, + "Position": { + "X": 45.944946, + "Y": -13.795549, + "Z": -118.0896 + }, + "TerritoryId": 820, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3523_Rebuild, Reuse, Recycle.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3523_Rebuild, Reuse, Recycle.json new file mode 100644 index 00000000..f2f58b4b --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3523_Rebuild, Reuse, Recycle.json @@ -0,0 +1,121 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1027595, + "Position": { + "X": 41.58081, + "Y": -7.639986, + "Z": -109.57507 + }, + "TerritoryId": 820, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010119, + "Position": { + "X": 23.697266, + "Y": -23.361572, + "Z": 121.23291 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Eulmore] The Glory Gate", + "[Eulmore] Southeast Derelicts" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + }, + { + "DataId": 2010117, + "Position": { + "X": 26.596436, + "Y": -21.957764, + "Z": 130.81555 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2010118, + "Position": { + "X": 46.860474, + "Y": -15.884705, + "Z": 132.21936 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 2010120, + "Position": { + "X": 45.76172, + "Y": -8.773987, + "Z": 139.05542 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1027595, + "Position": { + "X": 41.58081, + "Y": -7.639986, + "Z": -109.57507 + }, + "TerritoryId": 820, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Eulmore] Southeast Derelicts", + "[Eulmore] The Glory Gate" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3524_Of Legacies Lost and Reclaimed.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3524_Of Legacies Lost and Reclaimed.json new file mode 100644 index 00000000..7e5b3281 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Eulmore/3524_Of Legacies Lost and Reclaimed.json @@ -0,0 +1,99 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030472, + "Position": { + "X": -3.55542, + "Y": 6.800003, + "Z": 47.501343 + }, + "TerritoryId": 820, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2010123, + "Position": { + "X": -56.199036, + "Y": -5.2339478, + "Z": -28.122437 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 2010121, + "Position": { + "X": -5.56958, + "Y": 82.90222, + "Z": -35.446716 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Eulmore] The Glory Gate", + "[Eulmore] Aetheryte Plaza" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2010122, + "Position": { + "X": -14.114624, + "Y": 50.980347, + "Z": 33.920776 + }, + "TerritoryId": 820, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030472, + "Position": { + "X": -3.55542, + "Y": 6.800003, + "Z": 47.501343 + }, + "TerritoryId": 820, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Lakeland/3534_His Secret Shame.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Lakeland/3534_His Secret Shame.json new file mode 100644 index 00000000..38783dfd --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Lakeland/3534_His Secret Shame.json @@ -0,0 +1,81 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030689, + "Position": { + "X": -657.5875, + "Y": 50.950245, + "Z": -217.76147 + }, + "TerritoryId": 813, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -506.45068, + "Y": 3.7609627, + "Z": -19.921053 + }, + "StopDistance": 0.5, + "TerritoryId": 813, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 11147 + ], + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1030682, + "Position": { + "X": -506.4317, + "Y": 3.7609625, + "Z": -22.01886 + }, + "StopDistance": 7, + "TerritoryId": 813, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKZH302_03534_Q1_000_000", + "Answer": "TEXT_LUCKZH302_03534_A1_000_001" + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030681, + "Position": { + "X": -641.1383, + "Y": 55.757515, + "Z": -141.92426 + }, + "TerritoryId": 813, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 3535 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Lakeland/3535_A Much-needed Respite.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Lakeland/3535_A Much-needed Respite.json new file mode 100644 index 00000000..93910e6e --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Lakeland/3535_A Much-needed Respite.json @@ -0,0 +1,93 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030681, + "Position": { + "X": -641.1383, + "Y": 55.757515, + "Z": -141.92426 + }, + "TerritoryId": 813, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030683, + "Position": { + "X": -689.6925, + "Y": 52.037113, + "Z": -168.5664 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1030706, + "Position": { + "X": -375.32617, + "Y": 105.92186, + "Z": -618.92126 + }, + "StopDistance": 2, + "TerritoryId": 813, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2010210, + "Position": { + "X": -370.38226, + "Y": 103.37976, + "Z": -661.1887 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_LUCKZH303_03535_Q3_000_000", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030684, + "Position": { + "X": -351.91882, + "Y": 100.1054, + "Z": -629.0227 + }, + "TerritoryId": 813, + "InteractionType": "CompleteQuest", + "NextQuestId": 3536 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Lakeland/3536_Resolve Regained.json b/QuestPaths/5.x - Shadowbringers/Side Quests/Lakeland/3536_Resolve Regained.json new file mode 100644 index 00000000..d5a04f61 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Side Quests/Lakeland/3536_Resolve Regained.json @@ -0,0 +1,108 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1030684, + "Position": { + "X": -351.91882, + "Y": 100.1054, + "Z": -629.0227 + }, + "TerritoryId": 813, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1030685, + "Position": { + "X": -443.68658, + "Y": 9.218739, + "Z": -150.53027 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "AetheryteShortcut": "Lakeland - Ostall Imperative", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2010212, + "Position": { + "X": -395.8648, + "Y": 6.210388, + "Z": -51.895935 + }, + "TerritoryId": 813, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 11148 + ], + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2010213, + "Position": { + "X": -298.11554, + "Y": 4.348816, + "Z": 16.189758 + }, + "StopDistance": 0.5, + "TerritoryId": 813, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2010510, + "Position": { + "X": -239.9787, + "Y": 15.030029, + "Z": -196.73462 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1030688, + "Position": { + "X": -659.26605, + "Y": 51.002872, + "Z": -217.30377 + }, + "TerritoryId": 813, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Lakeland - Ostall Imperative", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Rak'tika/3479_Seeing Eye to Eye.json b/QuestPaths/5.x - Shadowbringers/Side Quests/The Rak'tika Greatwood/3479_Seeing Eye to Eye.json similarity index 100% rename from QuestPaths/5.x - Shadowbringers/Side Quests/Rak'tika/3479_Seeing Eye to Eye.json rename to QuestPaths/5.x - Shadowbringers/Side Quests/The Rak'tika Greatwood/3479_Seeing Eye to Eye.json diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Rak'tika/3480_Mending Fences.json b/QuestPaths/5.x - Shadowbringers/Side Quests/The Rak'tika Greatwood/3480_Mending Fences.json similarity index 100% rename from QuestPaths/5.x - Shadowbringers/Side Quests/Rak'tika/3480_Mending Fences.json rename to QuestPaths/5.x - Shadowbringers/Side Quests/The Rak'tika Greatwood/3480_Mending Fences.json diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Rak'tika/3481_Hearts as One.json b/QuestPaths/5.x - Shadowbringers/Side Quests/The Rak'tika Greatwood/3481_Hearts as One.json similarity index 100% rename from QuestPaths/5.x - Shadowbringers/Side Quests/Rak'tika/3481_Hearts as One.json rename to QuestPaths/5.x - Shadowbringers/Side Quests/The Rak'tika Greatwood/3481_Hearts as One.json diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Rak'tika/3482_Protectors of the Wood.json b/QuestPaths/5.x - Shadowbringers/Side Quests/The Rak'tika Greatwood/3482_Protectors of the Wood.json similarity index 100% rename from QuestPaths/5.x - Shadowbringers/Side Quests/Rak'tika/3482_Protectors of the Wood.json rename to QuestPaths/5.x - Shadowbringers/Side Quests/The Rak'tika Greatwood/3482_Protectors of the Wood.json diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Rak'tika/3657_Slither Along.json b/QuestPaths/5.x - Shadowbringers/Side Quests/The Rak'tika Greatwood/3657_Slither Along.json similarity index 100% rename from QuestPaths/5.x - Shadowbringers/Side Quests/Rak'tika/3657_Slither Along.json rename to QuestPaths/5.x - Shadowbringers/Side Quests/The Rak'tika Greatwood/3657_Slither Along.json diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Rak'tika/3658_Snake the Lead.json b/QuestPaths/5.x - Shadowbringers/Side Quests/The Rak'tika Greatwood/3658_Snake the Lead.json similarity index 100% rename from QuestPaths/5.x - Shadowbringers/Side Quests/Rak'tika/3658_Snake the Lead.json rename to QuestPaths/5.x - Shadowbringers/Side Quests/The Rak'tika Greatwood/3658_Snake the Lead.json diff --git a/QuestPaths/5.x - Shadowbringers/Side Quests/Rak'tika/3659_Snakes in the Grass.json b/QuestPaths/5.x - Shadowbringers/Side Quests/The Rak'tika Greatwood/3659_Snakes in the Grass.json similarity index 100% rename from QuestPaths/5.x - Shadowbringers/Side Quests/Rak'tika/3659_Snakes in the Grass.json rename to QuestPaths/5.x - Shadowbringers/Side Quests/The Rak'tika Greatwood/3659_Snakes in the Grass.json diff --git a/QuestPaths/5.x - Shadowbringers/Trial Quests/3783_Ruby Doomsday.json b/QuestPaths/5.x - Shadowbringers/Trial Quests/3783_Ruby Doomsday.json new file mode 100644 index 00000000..00dc1b44 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Trial Quests/3783_Ruby Doomsday.json @@ -0,0 +1,152 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032581, + "Position": { + "X": 750.1792, + "Y": 69.99991, + "Z": 518.9136 + }, + "TerritoryId": 621, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Lochs - Ala Mhigan Quarter", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1026804, + "Position": { + "X": -524.55945, + "Y": 8.698304, + "Z": -15.487976 + }, + "TerritoryId": 621, + "InteractionType": "Interact", + "AetheryteShortcut": "Lochs - Porta Praetoria", + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_LUCKYW101_03783_Q3_000_000", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1032582, + "Position": { + "X": -482.0478, + "Y": 107.63, + "Z": 121.934814 + }, + "TerritoryId": 829, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1032585, + "Position": { + "X": -465.53754, + "Y": 107.63, + "Z": 130.35779 + }, + "TerritoryId": 829, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "TerritoryId": 829, + "InteractionType": "Duty", + "ContentFinderConditionId": 717 + } + ] + }, + { + "Sequence": 5 + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1032861, + "Position": { + "X": -473.89948, + "Y": 107.63, + "Z": 132.86023 + }, + "StopDistance": 4, + "TerritoryId": 829, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1032851, + "Position": { + "X": -481.3764, + "Y": 107.63, + "Z": 122.78931 + }, + "TerritoryId": 829, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": -507.93283, + "Y": 7.6638765, + "Z": 52.09985 + }, + "TerritoryId": 621, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1032586, + "Position": { + "X": -505.42462, + "Y": 7.68313, + "Z": 51.621216 + }, + "TerritoryId": 621, + "InteractionType": "CompleteQuest", + "NextQuestId": 3895 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Trial Quests/3842_Weapon of Choice.json b/QuestPaths/5.x - Shadowbringers/Trial Quests/3842_Weapon of Choice.json new file mode 100644 index 00000000..44219720 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Trial Quests/3842_Weapon of Choice.json @@ -0,0 +1,28 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032764, + "Position": { + "X": -496.51334, + "Y": 7.681107, + "Z": 53.147095 + }, + "TerritoryId": 621, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKYB007_03842_Q1_000_000", + "Answer": "TEXT_LUCKYB007_03842_A1_000_002" + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Trial Quests/3895_Sleep Now in Sapphire.json b/QuestPaths/5.x - Shadowbringers/Trial Quests/3895_Sleep Now in Sapphire.json new file mode 100644 index 00000000..2c5cc516 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Trial Quests/3895_Sleep Now in Sapphire.json @@ -0,0 +1,216 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032586, + "Position": { + "X": -505.42462, + "Y": 7.68313, + "Z": 51.621216 + }, + "TerritoryId": 621, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Lochs - Porta Praetoria", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1026804, + "Position": { + "X": -524.55945, + "Y": 8.698304, + "Z": -15.487976 + }, + "TerritoryId": 621, + "InteractionType": "Interact", + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_LUCKYW201_03895_Q1_000_011", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1033626, + "Position": { + "X": -484.42816, + "Y": 107.63, + "Z": 136.5835 + }, + "TerritoryId": 829, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1032851, + "Position": { + "X": -481.3764, + "Y": 107.63, + "Z": 122.78931 + }, + "TerritoryId": 829, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1032851, + "Position": { + "X": -481.3764, + "Y": 107.63, + "Z": 122.78931 + }, + "TerritoryId": 829, + "InteractionType": "SinglePlayerDuty" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1032851, + "Position": { + "X": -481.3764, + "Y": 107.63, + "Z": 122.78931 + }, + "StopDistance": 5, + "TerritoryId": 829, + "InteractionType": "SinglePlayerDuty", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_LUCKYW201_03895_Q6_000_000", + "Answer": "TEXT_LUCKYW201_03895_A6_000_001" + } + ] + } + ] + }, + { + "Sequence": 6 + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1033629, + "Position": { + "X": -0.3204956, + "Y": 41, + "Z": 17.56311 + }, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1033632, + "Position": { + "X": 50.94983, + "Y": 35, + "Z": 60.440918 + }, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 9, + "Steps": [ + { + "DataId": 1033635, + "Position": { + "X": 5.2643433, + "Y": 41, + "Z": 9.811523 + }, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1033636, + "Position": { + "X": -5.5390625, + "Y": 41.019974, + "Z": 25.680908 + }, + "TerritoryId": 919, + "InteractionType": "Interact", + "TargetTerritoryId": 621, + "SkipConditions": { + "StepIf": { + "NotInTerritory": [ + 919 + ] + } + } + }, + { + "Position": { + "X": -507.93283, + "Y": 7.6638765, + "Z": 52.09985 + }, + "TerritoryId": 621, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Lochs - Porta Praetoria", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "DataId": 1032586, + "Position": { + "X": -505.42462, + "Y": 7.68313, + "Z": 51.621216 + }, + "TerritoryId": 621, + "InteractionType": "CompleteQuest", + "NextQuestId": 3980 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Trial Quests/3980_Blood of Emerald.json b/QuestPaths/5.x - Shadowbringers/Trial Quests/3980_Blood of Emerald.json new file mode 100644 index 00000000..81578f11 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Trial Quests/3980_Blood of Emerald.json @@ -0,0 +1,187 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032586, + "Position": { + "X": -505.42462, + "Y": 7.68313, + "Z": 51.621216 + }, + "TerritoryId": 621, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Lochs - Porta Praetoria", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1035243, + "Position": { + "X": -533.4402, + "Y": 8.187748, + "Z": -46.341675 + }, + "TerritoryId": 621, + "InteractionType": "Interact", + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_LUCKYW301_03980_Q2_000_000", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1033629, + "Position": { + "X": -0.3204956, + "Y": 41, + "Z": 17.56311 + }, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1035319, + "Position": { + "X": -467.0329, + "Y": 22.94018, + "Z": -416.89178 + }, + "TerritoryId": 140, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "TerritoryId": 140, + "InteractionType": "Duty", + "ContentFinderConditionId": 762 + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1035321, + "Position": { + "X": 98.802124, + "Y": 3.9999998, + "Z": 25.558838 + }, + "StopDistance": 5, + "TerritoryId": 967, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1033629, + "Position": { + "X": -0.3204956, + "Y": 41, + "Z": 17.56311 + }, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1035322, + "Position": { + "X": -37.1557, + "Y": 41, + "Z": -2.02948 + }, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1033636, + "Position": { + "X": -5.5390625, + "Y": 41.019974, + "Z": 25.680908 + }, + "StopDistance": 7, + "TerritoryId": 919, + "InteractionType": "Interact", + "TargetTerritoryId": 621, + "SkipConditions": { + "StepIf": { + "NotInTerritory": [ + 919 + ] + } + } + }, + { + "Position": { + "X": -507.93283, + "Y": 7.6638765, + "Z": 52.09985 + }, + "TerritoryId": 621, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Lochs - Porta Praetoria", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "DataId": 1032586, + "Position": { + "X": -505.42462, + "Y": 7.68313, + "Z": 51.621216 + }, + "TerritoryId": 621, + "InteractionType": "CompleteQuest", + "NextQuestId": 3981 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Trial Quests/3981_In Memory.json b/QuestPaths/5.x - Shadowbringers/Trial Quests/3981_In Memory.json new file mode 100644 index 00000000..04ce47ca --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Trial Quests/3981_In Memory.json @@ -0,0 +1,130 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032586, + "Position": { + "X": -505.42462, + "Y": 7.68313, + "Z": 51.621216 + }, + "TerritoryId": 621, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Lochs - Porta Praetoria", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1035243, + "Position": { + "X": -533.4402, + "Y": 8.187748, + "Z": -46.341675 + }, + "TerritoryId": 621, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_LUCKYW311_03981_Q3_000_000", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1035120, + "Position": { + "X": 52.140015, + "Y": 41, + "Z": 28.335938 + }, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1035323, + "Position": { + "X": 1.1443481, + "Y": 41.01995, + "Z": 24.917969 + }, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1033636, + "Position": { + "X": -5.5390625, + "Y": 41.019974, + "Z": 25.680908 + }, + "StopDistance": 7, + "TerritoryId": 919, + "InteractionType": "Interact", + "TargetTerritoryId": 621, + "SkipConditions": { + "StepIf": { + "NotInTerritory": [ + 919 + ] + } + } + }, + { + "Position": { + "X": -507.93283, + "Y": 7.6638765, + "Z": 52.09985 + }, + "TerritoryId": 621, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Lochs - Porta Praetoria", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "DataId": 1032586, + "Position": { + "X": -505.42462, + "Y": 7.68313, + "Z": 51.621216 + }, + "TerritoryId": 621, + "InteractionType": "CompleteQuest", + "NextQuestId": 4031 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Trial Quests/4031_Duty in the Sky with Diamond.json b/QuestPaths/5.x - Shadowbringers/Trial Quests/4031_Duty in the Sky with Diamond.json new file mode 100644 index 00000000..52770ec5 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Trial Quests/4031_Duty in the Sky with Diamond.json @@ -0,0 +1,150 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1032586, + "Position": { + "X": -505.42462, + "Y": 7.68313, + "Z": 51.621216 + }, + "TerritoryId": 621, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Lochs - Porta Praetoria", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1035243, + "Position": { + "X": -533.4402, + "Y": 8.187748, + "Z": -46.341675 + }, + "TerritoryId": 621, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_LUCKYW401_04031_Q9_000_000", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1033633, + "Position": { + "X": 7.2785034, + "Y": 41, + "Z": 8.255066 + }, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1036280, + "Position": { + "X": 45.88379, + "Y": 35, + "Z": 68.22302 + }, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1036281, + "Position": { + "X": -1.3580933, + "Y": 41, + "Z": 19.394226 + }, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1036283, + "Position": { + "X": 79.9115, + "Y": -1.4320341E-12, + "Z": 85.83191 + }, + "TerritoryId": 991, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "TerritoryId": 991, + "InteractionType": "Duty", + "ContentFinderConditionId": 781 + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1036283, + "Position": { + "X": 79.9115, + "Y": -1.4320341E-12, + "Z": 85.83191 + }, + "TerritoryId": 991, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1036286, + "Position": { + "X": -15.610046, + "Y": 41, + "Z": 5.3864136 + }, + "TerritoryId": 919, + "InteractionType": "CompleteQuest", + "NextQuestId": 4032 + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Trial Quests/4032_Forever at Your Side.json b/QuestPaths/5.x - Shadowbringers/Trial Quests/4032_Forever at Your Side.json new file mode 100644 index 00000000..cab7f1dc --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Trial Quests/4032_Forever at Your Side.json @@ -0,0 +1,164 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1036286, + "Position": { + "X": -15.610046, + "Y": 41, + "Z": 5.3864136 + }, + "TerritoryId": 919, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -11.236769, + "Y": 40.999996, + "Z": 15.472222 + }, + "TerritoryId": 919, + "InteractionType": "WalkTo" + }, + { + "DataId": 1036412, + "Position": { + "X": 53.391357, + "Y": 34.999996, + "Z": 80.094604 + }, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -11.236769, + "Y": 40.999996, + "Z": 15.472222 + }, + "TerritoryId": 919, + "InteractionType": "WalkTo" + }, + { + "DataId": 1036286, + "Position": { + "X": -15.610046, + "Y": 41, + "Z": 5.3864136 + }, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2011480, + "Position": { + "X": -17.227417, + "Y": 40.97046, + "Z": 5.2948 + }, + "StopDistance": 4.5, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1036286, + "Position": { + "X": -15.610046, + "Y": 41, + "Z": 5.3864136 + }, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1036285, + "Position": { + "X": -16.372986, + "Y": 40.999996, + "Z": 3.8909912 + }, + "StopDistance": 5, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1036287, + "Position": { + "X": -19.089111, + "Y": 41, + "Z": 3.768982 + }, + "StopDistance": 7, + "TerritoryId": 919, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + + "Position": { + "X": -507.93283, + "Y": 7.6638765, + "Z": 52.09985 + }, + "TerritoryId": 621, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Lochs - Porta Praetoria", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "DataId": 1032586, + "Position": { + "X": -505.42462, + "Y": 7.68313, + "Z": 51.621216 + }, + "TerritoryId": 621, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Unlocks/Dungeons/3595_By the Time You Hear This.json b/QuestPaths/5.x - Shadowbringers/Unlocks/Dungeons/3595_By the Time You Hear This.json new file mode 100644 index 00000000..d3773ed5 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Unlocks/Dungeons/3595_By the Time You Hear This.json @@ -0,0 +1,65 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1028898, + "Position": { + "X": -132.58563, + "Y": 0, + "Z": -14.023071 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1028899, + "Position": { + "X": 77.04285, + "Y": 0.0889954, + "Z": -31.784546 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Dossal Gate" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 819, + "InteractionType": "Duty", + "ContentFinderConditionId": 655 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1028899, + "Position": { + "X": 77.04285, + "Y": 0.0889954, + "Z": -31.784546 + }, + "TerritoryId": 819, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Unlocks/Dungeons/3596_Akadaemia Anyder.json b/QuestPaths/5.x - Shadowbringers/Unlocks/Dungeons/3596_Akadaemia Anyder.json new file mode 100644 index 00000000..0f402c80 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Unlocks/Dungeons/3596_Akadaemia Anyder.json @@ -0,0 +1,129 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1031144, + "Position": { + "X": 84.33655, + "Y": -10.490669, + "Z": 59.494873 + }, + "TerritoryId": 820, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -0.41547322, + "Y": -276.906, + "Z": 269.2778 + }, + "TerritoryId": 818, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Tempest - Macarenses Angle", + "Fly": true + }, + { + "DataId": 1027772, + "Position": { + "X": 5.3864136, + "Y": -276.906, + "Z": 271.59534 + }, + "StopDistance": 7, + "TerritoryId": 818, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -71.42122, + "Y": -274.33163, + "Z": 584.8395 + }, + "TerritoryId": 818, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1028056, + "Position": { + "X": -68.37573, + "Y": -274.33163, + "Z": 579.33923 + }, + "StopDistance": 7, + "TerritoryId": 818, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 818, + "InteractionType": "Duty", + "ContentFinderConditionId": 661 + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -71.42122, + "Y": -274.33163, + "Z": 584.8395 + }, + "TerritoryId": 818, + "InteractionType": "WalkTo" + }, + { + "DataId": 1028056, + "Position": { + "X": -68.37573, + "Y": -274.33163, + "Z": 579.33923 + }, + "StopDistance": 7, + "TerritoryId": 818, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1031144, + "Position": { + "X": 84.33655, + "Y": -10.490669, + "Z": 59.494873 + }, + "TerritoryId": 820, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Eulmore", + "AethernetShortcut": [ + "[Eulmore] Aetheryte Plaza", + "[Eulmore] Southeast Derelicts" + ] + } + ] + } + ] +} diff --git a/QuestPaths/5.x - Shadowbringers/Unlocks/Misc/3605_The Aspiring Skywatcher.json b/QuestPaths/5.x - Shadowbringers/Unlocks/Misc/3605_The Aspiring Skywatcher.json new file mode 100644 index 00000000..b0905c11 --- /dev/null +++ b/QuestPaths/5.x - Shadowbringers/Unlocks/Misc/3605_The Aspiring Skywatcher.json @@ -0,0 +1,21 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1031106, + "Position": { + "X": -8.255188, + "Y": -3.1851232E-07, + "Z": 10.543945 + }, + "TerritoryId": 819, + "InteractionType": "AcceptQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Aether Currents/Elpis/4288_You and the Ailouros.json b/QuestPaths/6.x - Endwalker/Aether Currents/Elpis/4288_You and the Ailouros.json index 07cf2c84..ddc09b77 100644 --- a/QuestPaths/6.x - Endwalker/Aether Currents/Elpis/4288_You and the Ailouros.json +++ b/QuestPaths/6.x - Endwalker/Aether Currents/Elpis/4288_You and the Ailouros.json @@ -28,18 +28,51 @@ "Z": 509.72766 }, "TerritoryId": 961, - "InteractionType": "WaitForManualProgress", - "Comment": "Follow" + "InteractionType": "Interact" + }, + { + "DataId": 1041141, + "Position": { + "X": -655.5854, + "Y": -22.394821, + "Z": 498.91443 + }, + "StopDistance": 1, + "TerritoryId": 961, + "InteractionType": "WaitForNpcAtPosition", + "Mount": true + }, + { + "DataId": 1041141, + "Position": { + "X": -686.881, + "Y": -25.994936, + "Z": 443.804 + }, + "StopDistance": 1, + "TerritoryId": 961, + "InteractionType": "WaitForNpcAtPosition" + }, + { + "DataId": 1041141, + "Position": { + "X": -738.11304, + "Y": -25.933691, + "Z": 487.78436 + }, + "StopDistance": 1, + "TerritoryId": 961, + "InteractionType": "WaitForNpcAtPosition" }, { "Position": { - "X": -838.7837, - "Y": -39.605896, - "Z": 518.9479 + "X": -819.6994, + "Y": -38.65795, + "Z": 506.43152 }, + "StopDistance": 1, "TerritoryId": 961, - "InteractionType": "WalkTo", - "Comment": "Unsure if this is sequence 1" + "InteractionType": "WalkTo" } ] }, diff --git a/QuestPaths/6.x - Endwalker/Aether Currents/Garlemald/4232_Children Are Our Future.json b/QuestPaths/6.x - Endwalker/Aether Currents/Garlemald/4232_Children Are Our Future.json index 98ba0654..f604d5ae 100644 --- a/QuestPaths/6.x - Endwalker/Aether Currents/Garlemald/4232_Children Are Our Future.json +++ b/QuestPaths/6.x - Endwalker/Aether Currents/Garlemald/4232_Children Are Our Future.json @@ -223,7 +223,8 @@ "InteractionType": "WalkTo", "Sprint": false, "Mount": false, - "DelaySecondsAtStart": 5 + "DelaySecondsAtStart": 5, + "RestartNavigationIfCancelled": false } ] }, diff --git a/QuestPaths/6.x - Endwalker/Aether Currents/Labyrinthos/4320_Gleaners Wish.json b/QuestPaths/6.x - Endwalker/Aether Currents/Labyrinthos/4320_Gleaners Wish.json index 6ad932e0..1b1ffd85 100644 --- a/QuestPaths/6.x - Endwalker/Aether Currents/Labyrinthos/4320_Gleaners Wish.json +++ b/QuestPaths/6.x - Endwalker/Aether Currents/Labyrinthos/4320_Gleaners Wish.json @@ -13,7 +13,14 @@ "Z": -74.906555 }, "TerritoryId": 956, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZI005_04320_Q1_000_000", + "Answer": "TEXT_AKTKZI005_04320_A1_000_003" + } + ] } ] }, diff --git a/QuestPaths/6.x - Endwalker/Aether Currents/Labyrinthos/4484_The Lad in Labyrinthos.json b/QuestPaths/6.x - Endwalker/Aether Currents/Labyrinthos/4484_The Lad in Labyrinthos.json index 245becb9..5545c918 100644 --- a/QuestPaths/6.x - Endwalker/Aether Currents/Labyrinthos/4484_The Lad in Labyrinthos.json +++ b/QuestPaths/6.x - Endwalker/Aether Currents/Labyrinthos/4484_The Lad in Labyrinthos.json @@ -13,7 +13,14 @@ "Z": -23.758362 }, "TerritoryId": 956, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZI101_04484_Q1_000_000", + "Answer": "TEXT_AKTKZI101_04484_A1_000_002" + } + ] } ] }, diff --git a/QuestPaths/6.x - Endwalker/Aether Currents/Mare Lamentorum/4241_Carrots Its Whats for Dinner.json b/QuestPaths/6.x - Endwalker/Aether Currents/Mare Lamentorum/4241_Carrots Its Whats for Dinner.json index 0d7637ca..43097754 100644 --- a/QuestPaths/6.x - Endwalker/Aether Currents/Mare Lamentorum/4241_Carrots Its Whats for Dinner.json +++ b/QuestPaths/6.x - Endwalker/Aether Currents/Mare Lamentorum/4241_Carrots Its Whats for Dinner.json @@ -252,7 +252,7 @@ "Y": -151.26128, "Z": -657.2519 }, - "StopDistance": 7, + "StopDistance": 6, "TerritoryId": 959, "InteractionType": "Say", "DisableNavmesh": true, diff --git a/QuestPaths/6.x - Endwalker/Aether Currents/Thavnair/4203_Alchemist or Dancer.json b/QuestPaths/6.x - Endwalker/Aether Currents/Thavnair/4203_Alchemist or Dancer.json index 3b15ae0b..85aec37d 100644 --- a/QuestPaths/6.x - Endwalker/Aether Currents/Thavnair/4203_Alchemist or Dancer.json +++ b/QuestPaths/6.x - Endwalker/Aether Currents/Thavnair/4203_Alchemist or Dancer.json @@ -20,6 +20,15 @@ { "Sequence": 1, "Steps": [ + { + "Position": { + "X": 19.631685, + "Y": 90.24879, + "Z": -136.69801 + }, + "TerritoryId": 957, + "InteractionType": "WalkTo" + }, { "DataId": 1039382, "Position": { @@ -27,6 +36,7 @@ "Y": 90.248795, "Z": -133.34863 }, + "StopDistance": 7, "TerritoryId": 957, "InteractionType": "Interact" } diff --git a/QuestPaths/6.x - Endwalker/Aether Currents/Thavnair/4489_Steppe Child.json b/QuestPaths/6.x - Endwalker/Aether Currents/Thavnair/4489_Steppe Child.json index 445e90ec..9477c821 100644 --- a/QuestPaths/6.x - Endwalker/Aether Currents/Thavnair/4489_Steppe Child.json +++ b/QuestPaths/6.x - Endwalker/Aether Currents/Thavnair/4489_Steppe Child.json @@ -20,8 +20,7 @@ "Prompt": "TEXT_AKTKZA201_04489_Q1_000_004", "Answer": "TEXT_AKTKZA201_04489_A1_000_002" } - ], - "Comment": "TODO I don't think dialogue choices as part of accepting a quest are handled yet" + ] } ] }, @@ -84,6 +83,7 @@ "Y": 41.614826, "Z": 409.53687 }, + "StopDistance": 7, "TerritoryId": 957, "InteractionType": "Interact" } diff --git a/QuestPaths/6.x - Endwalker/Aether Currents/Ultima Thule/4342_Ending as One.json b/QuestPaths/6.x - Endwalker/Aether Currents/Ultima Thule/4342_Ending as One.json index 2c458504..255d858b 100644 --- a/QuestPaths/6.x - Endwalker/Aether Currents/Ultima Thule/4342_Ending as One.json +++ b/QuestPaths/6.x - Endwalker/Aether Currents/Ultima Thule/4342_Ending as One.json @@ -29,9 +29,33 @@ "TerritoryId": 960, "InteractionType": "Combat", "EnemySpawnType": "OverworldEnemies", - "KillEnemyDataIds": [ - 13315, - 14097 + "ComplexCombatData": [ + { + "DataId": 13315, + "MinimumKillCount": 2, + "CompletionQuestVariablesFlags": [ + null, + 32, + null, + null, + null, + null + ] + }, + { + "DataId": 14097, + "MinimumKillCount": 1, + "CompletionQuestVariablesFlags": [ + null, + { + "High": 3 + }, + null, + null, + null, + null + ] + } ], "$": "QuestVariables: 0 0-16-32 0 0 0 0" } diff --git a/QuestPaths/6.x - Endwalker/Aether Currents/Ultima Thule/4346_A Most Stimulating Discussion.json b/QuestPaths/6.x - Endwalker/Aether Currents/Ultima Thule/4346_A Most Stimulating Discussion.json index 60757d42..82bf9238 100644 --- a/QuestPaths/6.x - Endwalker/Aether Currents/Ultima Thule/4346_A Most Stimulating Discussion.json +++ b/QuestPaths/6.x - Endwalker/Aether Currents/Ultima Thule/4346_A Most Stimulating Discussion.json @@ -20,6 +20,28 @@ { "Sequence": 1, "Steps": [ + { + "Position": { + "X": 33.55028, + "Y": 269.00006, + "Z": -683.68896 + }, + "TerritoryId": 960, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Ultima Thule - Abode of the Ea", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + } + }, { "DataId": 1040880, "Position": { @@ -29,7 +51,14 @@ }, "TerritoryId": 960, "InteractionType": "Interact", - "AetheryteShortcut": "Ultima Thule - Abode of the Ea" + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] }, { "DataId": 1040881, @@ -41,7 +70,22 @@ "TerritoryId": 960, "InteractionType": "Interact", "$.0": "[2]", - "$.1": "QuestVariables if done after [3]: 32 17 0 0 0 160" + "$.1": "QuestVariables if done after [3]: 32 17 0 0 0 160", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZJ010_04346_Q1_000_000", + "Answer": "TEXT_AKTKZJ010_04346_A1_000_001" + } + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] }, { "DataId": 1040879, @@ -53,7 +97,15 @@ "TerritoryId": 960, "InteractionType": "Interact", "$.0": "[3]", - "$.1": "QuestVariables if done first: 16 1 0 0 0 128" + "$.1": "QuestVariables if done first: 16 1 0 0 0 128", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] } ] }, diff --git a/QuestPaths/6.x - Endwalker/Aether Currents/Ultima Thule/4354_Combat Evolved.json b/QuestPaths/6.x - Endwalker/Aether Currents/Ultima Thule/4354_Combat Evolved.json index 3a863052..5b8449c0 100644 --- a/QuestPaths/6.x - Endwalker/Aether Currents/Ultima Thule/4354_Combat Evolved.json +++ b/QuestPaths/6.x - Endwalker/Aether Currents/Ultima Thule/4354_Combat Evolved.json @@ -13,13 +13,36 @@ "Z": 315.81592 }, "TerritoryId": 960, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZK001_04354_Q1_000_100", + "Answer": "TEXT_AKTKZK001_04354_A2_000_100" + } + ] } ] }, { "Sequence": 1, "Steps": [ + { + "Position": { + "X": 588.5607, + "Y": 437.99976, + "Z": 299.7425 + }, + "TerritoryId": 960, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": 602.4677, + "Y": 438.6276, + "Z": 297.1612 + } + } + }, { "Position": { "X": 656.94653, @@ -28,12 +51,11 @@ }, "StopDistance": 0.5, "TerritoryId": 960, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Combat", "EnemySpawnType": "AutoOnEnterArea", "KillEnemyDataIds": [ 14044 - ], - "Comment": "Can maybe be automated to use item depending on quest vars??" + ] } ] }, diff --git a/QuestPaths/6.x - Endwalker/Aether Currents/Ultima Thule/4355_Learn to Love.json b/QuestPaths/6.x - Endwalker/Aether Currents/Ultima Thule/4355_Learn to Love.json new file mode 100644 index 00000000..54e86496 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Aether Currents/Ultima Thule/4355_Learn to Love.json @@ -0,0 +1,113 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041656, + "Position": { + "X": 510.3075, + "Y": 436.9997, + "Z": 307.17932 + }, + "TerritoryId": 960, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2012560, + "Position": { + "X": 510.3379, + "Y": 436.9724, + "Z": 307.20984 + }, + "TerritoryId": 960, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2012752, + "Position": { + "X": 687.2511, + "Y": 440.48218, + "Z": 375.3567 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2012753, + "Position": { + "X": 688.74634, + "Y": 440.45154, + "Z": 381.21606 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 674.91565, + "Y": 440.4633, + "Z": 404.94272 + }, + "TerritoryId": 960, + "InteractionType": "WalkTo" + }, + { + "DataId": 2012032, + "Position": { + "X": 661.76843, + "Y": 439.96326, + "Z": 411.73413 + }, + "TerritoryId": 960, + "InteractionType": "AttuneAetherCurrent", + "AetherCurrentId": 2818391 + }, + { + "DataId": 1041656, + "Position": { + "X": 510.3075, + "Y": 436.9997, + "Z": 307.17932 + }, + "TerritoryId": 960, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Ultima Thule - Base Omicron" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4536_A Mission in Mor Dhona.json b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4536_A Mission in Mor Dhona.json new file mode 100644 index 00000000..75002313 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4536_A Mission in Mor Dhona.json @@ -0,0 +1,158 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1042267, + "Position": { + "X": -104.997375, + "Y": 3.8989396, + "Z": 13.290527 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Old Sharlayan", + "AethernetShortcut": [ + "[Old Sharlayan] Aetheryte Plaza", + "[Old Sharlayan] The Baldesion Annex" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2012860, + "Position": { + "X": 42.160645, + "Y": 20.462341, + "Z": -683.1617 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "AetheryteShortcut": "Mor Dhona" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1042268, + "Position": { + "X": 178.5763, + "Y": -15.5223675, + "Z": -496.14713 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3 + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1042269, + "Position": { + "X": 1.449585, + "Y": 0.05000399, + "Z": -18.661804 + }, + "TerritoryId": 1061, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 2012863, + "Position": { + "X": 0.1327076, + "Y": 2.960754, + "Z": 6.778096 + }, + "StopDistance": 5, + "TerritoryId": 1061, + "InteractionType": "Interact", + "IgnoreDistanceToObject": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2012865, + "Position": { + "X": -21.21936, + "Y": 0.7837547, + "Z": -58.66461 + }, + "TerritoryId": 1061, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 2012864, + "Position": { + "X": 59.830566, + "Y": 5.0201416, + "Z": 69.10803 + }, + "TerritoryId": 1061, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1042273, + "Position": { + "X": 3.5248413, + "Y": 0.0999997, + "Z": 14.145081 + }, + "TerritoryId": 1061, + "InteractionType": "CompleteQuest", + "NextQuestId": 4537 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4537_The Realm of the Gods.json b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4537_The Realm of the Gods.json new file mode 100644 index 00000000..ecf1ca77 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4537_The Realm of the Gods.json @@ -0,0 +1,64 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1042275, + "Position": { + "X": 5.7526245, + "Y": 0.0999997, + "Z": 11.703674 + }, + "StopDistance": 5, + "TerritoryId": 1061, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1042276, + "Position": { + "X": 45.76172, + "Y": 0.05, + "Z": 6.9733276 + }, + "TerritoryId": 1061, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 1061, + "InteractionType": "Duty", + "ContentFinderConditionId": 866 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1042278, + "Position": { + "X": 12.130859, + "Y": 0.0999997, + "Z": -0.83929443 + }, + "StopDistance": 5, + "TerritoryId": 1061, + "InteractionType": "CompleteQuest", + "NextQuestId": 4538 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4538_A Divine Dilemma.json b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4538_A Divine Dilemma.json new file mode 100644 index 00000000..cebc6abc --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4538_A Divine Dilemma.json @@ -0,0 +1,150 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1042278, + "Position": { + "X": 12.130859, + "Y": 0.0999997, + "Z": -0.83929443 + }, + "StopDistance": 5, + "TerritoryId": 1061, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1042279, + "Position": { + "X": 13.290527, + "Y": 0.099999696, + "Z": -2.243164 + }, + "TerritoryId": 1061, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2012867, + "Position": { + "X": -3.2197266, + "Y": 2.7313232, + "Z": -40.665344 + }, + "TerritoryId": 635, + "InteractionType": "Interact", + "AetheryteShortcut": "Rhalgr's Reach" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2012866, + "Position": { + "X": -0.015319824, + "Y": 6.6376343, + "Z": -78.81293 + }, + "StopDistance": 5, + "TerritoryId": 635, + "InteractionType": "Interact", + "IgnoreDistanceToObject": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1042283, + "Position": { + "X": -59.250793, + "Y": -4.6778445E-15, + "Z": -29.984009 + }, + "TerritoryId": 635, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1042284, + "Position": { + "X": 208.69751, + "Y": 13.5620365, + "Z": -140.30676 + }, + "TerritoryId": 635, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Rhalgr's Reach] Western Rhalgr's Reach", + "[Rhalgr's Reach] Northeastern Rhalgr's Reach" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2012867, + "Position": { + "X": -3.2197266, + "Y": 2.7313232, + "Z": -40.665344 + }, + "TerritoryId": 635, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1042285, + "Position": { + "X": -4.623535, + "Y": 2.745737, + "Z": -39.505676 + }, + "StopDistance": 5, + "TerritoryId": 635, + "InteractionType": "CompleteQuest", + "NextQuestId": 4539 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4539_The Face of an Explorer.json b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4539_The Face of an Explorer.json new file mode 100644 index 00000000..b195676b --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4539_The Face of an Explorer.json @@ -0,0 +1,174 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1042285, + "Position": { + "X": -4.623535, + "Y": 2.745737, + "Z": -39.505676 + }, + "StopDistance": 5, + "TerritoryId": 635, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Rhalgr's Reach", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1042286, + "Position": { + "X": -207.04968, + "Y": 18, + "Z": 87.84619 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": ["[Ul'dah] Aetheryte Plaza","[Ul'dah] Thaumaturges' Guild"] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1042287, + "Position": { + "X": -164.47705, + "Y": 14.004999, + "Z": 49.576538 + }, + "TerritoryId": 130, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": -157.07425, + "Y": 24.884384, + "Z": -354.37775 + }, + "TerritoryId": 146, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo", + "Fly": true + }, + { + "DataId": 1042288, + "Position": { + "X": 153.09375, + "Y": 10.362769, + "Z": -436.88104 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 135.51227, + "Y": 10.850319, + "Z": -487.7127 + }, + "TerritoryId": 146, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2012869, + "Position": { + "X": 137.4685, + "Y": 10.696533, + "Z": -488.36502 + }, + "TerritoryId": 146, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1042288, + "Position": { + "X": 153.09375, + "Y": 10.362769, + "Z": -436.88104 + }, + "TerritoryId": 146, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 2012870, + "Position": { + "X": 154.46704, + "Y": -26.29132, + "Z": -437.46094 + }, + "StopDistance": 1, + "TerritoryId": 156, + "InteractionType": "Interact", + "AetheryteShortcut": "Mor Dhona", + "Fly": true, + "TargetTerritoryId": 1061 + }, + { + "DataId": 1042281, + "Position": { + "X": 1.9378662, + "Y": 0.099999696, + "Z": -0.44250488 + }, + "TerritoryId": 1061, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1042264, + "Position": { + "X": 124.22363, + "Y": 19.32629, + "Z": -617.42584 + }, + "TerritoryId": 156, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 4666 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4666_Return to the Phantom Realm.json b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4666_Return to the Phantom Realm.json new file mode 100644 index 00000000..7dd95c4d --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4666_Return to the Phantom Realm.json @@ -0,0 +1,87 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1042264, + "Position": { + "X": 124.22363, + "Y": 19.32629, + "Z": -617.42584 + }, + "TerritoryId": 156, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2012870, + "Position": { + "X": 154.46704, + "Y": -26.29132, + "Z": -437.46094 + }, + "StopDistance": 1, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true, + "TargetTerritoryId": 1061 + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1044299, + "Position": { + "X": -85.89307, + "Y": 3, + "Z": 84.58069 + }, + "StopDistance": 5, + "TerritoryId": 1061, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 1061, + "InteractionType": "Duty", + "ContentFinderConditionId": 911 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1044303, + "Position": { + "X": -7.2786255, + "Y": 0.0999997, + "Z": 5.874695 + }, + "TerritoryId": 1061, + "InteractionType": "CompleteQuest", + "NextQuestId": 4667 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4667_In Heavenly Company.json b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4667_In Heavenly Company.json new file mode 100644 index 00000000..24f793c8 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4667_In Heavenly Company.json @@ -0,0 +1,139 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1044304, + "Position": { + "X": -6.6377563, + "Y": 0.0999997, + "Z": 7.2785034 + }, + "TerritoryId": 1061, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2012871, + "Position": { + "X": 15.945618, + "Y": 1.7547607, + "Z": -61.600708 + }, + "TerritoryId": 1061, + "InteractionType": "Interact", + "TargetTerritoryId": 156, + "SkipConditions": { + "StepIf": { + "NotInTerritory": [ + 1061 + ] + } + } + }, + { + "DataId": 1044306, + "Position": { + "X": -149.58423, + "Y": 42.86022, + "Z": -182.8794 + }, + "TerritoryId": 156, + "InteractionType": "Interact", + "AetheryteShortcut": "Mor Dhona", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 126.23871, + "Y": 31.274973, + "Z": -772.4912 + }, + "TerritoryId": 156, + "InteractionType": "WalkTo", + "Fly": true, + "AetheryteShortcut": "Mor Dhona" + }, + { + "Position": { + "X": -693.9247, + "Y": 261.1125, + "Z": 436.2933 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1044310, + "Position": { + "X": -674.21985, + "Y": 254.80737, + "Z": 490.77588 + }, + "TerritoryId": 155, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 180.50424, + "Y": 360.59534, + "Z": -609.197 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "Fly": true + }, + { + "DataId": 1044314, + "Position": { + "X": 182.5741, + "Y": 360.90265, + "Z": -610.2846 + }, + "TerritoryId": 155, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1044315, + "Position": { + "X": 80.24719, + "Y": 373.73154, + "Z": -674.49457 + }, + "TerritoryId": 155, + "InteractionType": "CompleteQuest", + "NextQuestId": 4668 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4668_Divine Nonintervention.json b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4668_Divine Nonintervention.json new file mode 100644 index 00000000..f92e20a4 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4668_Divine Nonintervention.json @@ -0,0 +1,124 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1044315, + "Position": { + "X": 80.24719, + "Y": 373.73154, + "Z": -674.49457 + }, + "TerritoryId": 155, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1044319, + "Position": { + "X": -45.91449, + "Y": -4.1435657, + "Z": 8.8349 + }, + "TerritoryId": 132, + "InteractionType": "Interact", + "AetheryteShortcut": "Gridania" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -105.23065, + "Y": 1.2987103, + "Z": 6.734147 + }, + "TerritoryId": 132, + "InteractionType": "WalkTo", + "TargetTerritoryId": 133 + }, + { + "DataId": 1044323, + "Position": { + "X": -140.45929, + "Y": 5.046544, + "Z": -40.48224 + }, + "TerritoryId": 133, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1043024, + "Position": { + "X": -239.94812, + "Y": 0.8012663, + "Z": 384.60352 + }, + "TerritoryId": 153, + "InteractionType": "Interact", + "AetheryteShortcut": "South Shroud - Camp Tranquil", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1044328, + "Position": { + "X": -246.08228, + "Y": 0.7061289, + "Z": 384.08484 + }, + "StopDistance": 7, + "TerritoryId": 153, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_AKTKEA203_04668_SYSTEM_000_122", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1044331, + "Position": { + "X": 204.05884, + "Y": 6.2006326, + "Z": -32.059265 + }, + "TerritoryId": 153, + "InteractionType": "CompleteQuest", + "NextQuestId": 4669 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4669_The Secret of the Twelve.json b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4669_The Secret of the Twelve.json new file mode 100644 index 00000000..b4384e8f --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4669_The Secret of the Twelve.json @@ -0,0 +1,80 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1044331, + "Position": { + "X": 204.05884, + "Y": 6.2006326, + "Z": -32.059265 + }, + "TerritoryId": 153, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "South Shroud - Quarrymill", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2012870, + "Position": { + "X": 154.46704, + "Y": -26.29132, + "Z": -437.46094 + }, + "StopDistance": 1, + "TerritoryId": 156, + "InteractionType": "Interact", + "AetheryteShortcut": "Mor Dhona", + "Fly": true, + "TargetTerritoryId": 1061 + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1044335, + "Position": { + "X": -1.3886108, + "Y": 0.0999997, + "Z": 0.59503174 + }, + "StopDistance": 5, + "TerritoryId": 1061, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1042264, + "Position": { + "X": 124.22363, + "Y": 19.32629, + "Z": -617.42584 + }, + "TerritoryId": 156, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Mor Dhona", + "Fly": true, + "NextQuestId": 4791 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4791_The Heart of the Myth.json b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4791_The Heart of the Myth.json new file mode 100644 index 00000000..395cd5e7 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4791_The Heart of the Myth.json @@ -0,0 +1,155 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1042264, + "Position": { + "X": 124.22363, + "Y": 19.32629, + "Z": -617.42584 + }, + "TerritoryId": 156, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Mor Dhona", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2012870, + "Position": { + "X": 154.46704, + "Y": -26.29132, + "Z": -437.46094 + }, + "StopDistance": 1, + "TerritoryId": 156, + "InteractionType": "Interact", + "Fly": true, + "TargetTerritoryId": 1061 + }, + { + "DataId": 1045968, + "Position": { + "X": 5.661072, + "Y": 0.099999696, + "Z": 5.8441772 + }, + "TerritoryId": 1061, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1045971, + "Position": { + "X": 1.3580322, + "Y": 0.099999696, + "Z": 27.237305 + }, + "TerritoryId": 1061, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_AKTKEA301_04791_Q1_100_000", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2013455, + "Position": { + "X": -510.1244, + "Y": 128.64868, + "Z": 607.9956 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "AetheryteShortcut": "Mare Lamentorum - Sinus Lacrimarum", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2012870, + "Position": { + "X": 154.46704, + "Y": -26.29132, + "Z": -437.46094 + }, + "StopDistance": 1, + "TerritoryId": 156, + "InteractionType": "Interact", + "AetheryteShortcut": "Mor Dhona", + "Fly": true, + "TargetTerritoryId": 1061 + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1045974, + "Position": { + "X": 2.3651123, + "Y": 0.099999696, + "Z": -11.215393 + }, + "StopDistance": 5, + "TerritoryId": 1061, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "TerritoryId": 1061, + "InteractionType": "Duty", + "ContentFinderConditionId": 962 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1045982, + "Position": { + "X": 945.2506, + "Y": -950, + "Z": -940.55084 + }, + "TerritoryId": 1182, + "InteractionType": "CompleteQuest", + "NextQuestId": 4792 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4792_Embraced by Gods.json b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4792_Embraced by Gods.json new file mode 100644 index 00000000..025ac172 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Alliance Raid Quests/4792_Embraced by Gods.json @@ -0,0 +1,146 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1045985, + "Position": { + "X": 945.18945, + "Y": -950, + "Z": -937.8042 + }, + "StopDistance": 4, + "TerritoryId": 1182, + "InteractionType": "AcceptQuest" } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2013456, + "Position": { + "X": -192.6452, + "Y": 18.32605, + "Z": 24.36853 + }, + "TerritoryId": 152, + "InteractionType": "Interact", + "AetheryteShortcut": "East Shroud - Hawthorne Hut", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1045992, + "Position": { + "X": -277.45483, + "Y": 16.000862, + "Z": 50.461548 + }, + "TerritoryId": 129, + "InteractionType": "Interact", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Arcanists' Guild" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1045994, + "Position": { + "X": -13.7178955, + "Y": 68.37596, + "Z": 125.65808 + }, + "TerritoryId": 135, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Limsa Lominsa] Arcanists' Guild", + "[Limsa Lominsa] Tempest Gate (Lower La Noscea)" + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1045996, + "Position": { + "X": 85.9845, + "Y": 68.34592, + "Z": 348.989 + }, + "TerritoryId": 135, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 1045996, + "Position": { + "X": 45.021595, + "Y": 71.30157, + "Z": 376.23453 + }, + "TerritoryId": 135, + "InteractionType": "WaitForNpcAtPosition", + "Mount": false, + "Sprint": false + }, + { + "DataId": 1045996, + "Position": { + "X": 43.50745, + "Y": 71.30162, + "Z": 379.11874 + }, + "StopDistance": 10, + "TerritoryId": 135, + "InteractionType": "WaitForNpcAtPosition", + "Mount": false, + "Sprint": false + }, + { + "DataId": 1045998, + "Position": { + "X": 9.048584, + "Y": 66.55368, + "Z": 409.53687 + }, + "StopDistance": 1, + "TerritoryId": 135, + "InteractionType": "WalkTo", + "Mount": false, + "Sprint": false + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1045998, + "Position": { + "X": 9.048584, + "Y": 66.55368, + "Z": 409.53687 + }, + "TerritoryId": 135, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Arkasodara/Dailies/4563_Seedy Affair.json b/QuestPaths/6.x - Endwalker/Allied Societies/Arkasodara/Dailies/4563_Seedy Affair.json index 077c6da6..db0beb8f 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Arkasodara/Dailies/4563_Seedy Affair.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Arkasodara/Dailies/4563_Seedy Affair.json @@ -34,7 +34,9 @@ "AetheryteShortcut": "Thavnair - Palaka's Stand", "RequiredQuestVariables": [ null, - [19], + [ + 19 + ], null, null, null, @@ -54,7 +56,9 @@ "Fly": true, "RequiredQuestVariables": [ null, - [18], + [ + 18 + ], null, null, null, @@ -74,7 +78,9 @@ "Fly": true, "RequiredQuestVariables": [ null, - [17], + [ + 17 + ], null, null, null, @@ -98,7 +104,9 @@ "RequiredQuestVariables": [ null, null, - [0], + [ + 0 + ], null, null, null @@ -116,7 +124,9 @@ "RequiredQuestVariables": [ null, null, - [64], + [ + 64 + ], null, null, null @@ -134,7 +144,9 @@ "RequiredQuestVariables": [ null, null, - [128], + [ + 128 + ], null, null, null diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Arkasodara/Dailies/4563_Seedy Affair.md b/QuestPaths/6.x - Endwalker/Allied Societies/Arkasodara/Dailies/4563_Seedy Affair.md index db23cef7..da5f2161 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Arkasodara/Dailies/4563_Seedy Affair.md +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Arkasodara/Dailies/4563_Seedy Affair.md @@ -1,6 +1,7 @@ ## Seedy Affair Step 1: + ``` 0 ?? 0 0 0 0 17 → 2012886 @@ -9,6 +10,7 @@ Step 1: ``` Step 2 + ``` 0 0 ?? 0 0 0 128 → 2012886 diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4689_Money Makes the Moon Go Round.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4689_Money Makes the Moon Go Round.json index b1d281b4..4b1d7ea1 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4689_Money Makes the Moon Go Round.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4689_Money Makes the Moon Go Round.json @@ -29,6 +29,21 @@ { "Sequence": 1, "Steps": [ + { + "Position": { + "X": -170.51479, + "Y": -105.22506, + "Z": -511.04712 + }, + "TerritoryId": 959, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "Flying": "Locked" + } + } + }, { "DataId": 1044572, "Position": { @@ -37,7 +52,8 @@ "Z": -513.0846 }, "TerritoryId": 959, - "InteractionType": "Interact" + "InteractionType": "Interact", + "Fly": true } ] }, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4691_Pieces of You.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4691_Pieces of You.json index f42e401c..a4eaf247 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4691_Pieces of You.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4691_Pieces of You.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4692_Underneath the Starry Lights.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4692_Underneath the Starry Lights.json index d4d0059f..5d1dfec0 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4692_Underneath the Starry Lights.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4692_Underneath the Starry Lights.json @@ -1,6 +1,6 @@ -{ +{ "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "pot0to", + "Author": "Kaiser", "QuestSequence": [ { "Sequence": 0, @@ -27,7 +27,7 @@ ] }, { - "Sequence": 255, + "Sequence": 1, "Steps": [ { "DataId": 1044569, @@ -37,10 +37,29 @@ "Z": -261.28027 }, "TerritoryId": 959, - "Fly": true, "InteractionType": "Interact", - "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow" - }, + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "StopDistance": 5, + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": -385.6718, + "Y": -151.67168, + "Z": -261.28027 + }, + "MaximumDistance": 30, + "TerritoryId": 959 + } + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ { "TerritoryId": 959, "InteractionType": "Craft", @@ -54,7 +73,22 @@ "Z": -273.68756 }, "TerritoryId": 959, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": -201.42024, + "Y": -49.149708, + "Z": -273.68756 + }, + "MaximumDistance": 100, + "TerritoryId": 959 + } + } + } }, { "DataId": 1044403, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4693_Carrotlight, Carrot Bright.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4693_Carrotlight, Carrot Bright.json index d731dcbc..479eedb1 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4693_Carrotlight, Carrot Bright.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4693_Carrotlight, Carrot Bright.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "kaiser", "QuestSequence": [ { "Sequence": 0, @@ -30,11 +29,28 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1044412, + "Position": { + "X": -181.56714, + "Y": -49.19972, + "Z": -304.76843 + }, + "StopDistance": 5, + "TerritoryId": 959, + "InteractionType": "Interact" + } ] }, { "Sequence": 255, "Steps": [ + { + "TerritoryId": 959, + "InteractionType": "Craft", + "ItemId": 38863, + "ItemCount": 3 + }, { "Position": { "X": -201.42024, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4694_Pitch Perfect.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4694_Pitch Perfect.json index d731dcbc..0df5b080 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4694_Pitch Perfect.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4694_Pitch Perfect.json @@ -1,7 +1,6 @@ -{ +{ "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "kaiser", "QuestSequence": [ { "Sequence": 0, @@ -30,20 +29,60 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1044408, + "Position": { + "X": -164.08032, + "Y": -49.199722, + "Z": -250.75159 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2013257, + "Position": { + "X": -706.41644, + "Y": -140.39832, + "Z": -433.76825 + }, + "TerritoryId": 959, + "InteractionType": "Action", + "Action": "Hop-step", + "Fly": true, + "Land": true + }, + { + "DataId": 2013256, + "Position": { + "X": -739.0097, + "Y": -139.72687, + "Z": -539.0555 + }, + "TerritoryId": 959, + "InteractionType": "Action", + "Action": "Hop-step", + "Fly": true, + "Land": true + } ] }, { "Sequence": 255, "Steps": [ - { - "Position": { - "X": -201.42024, - "Y": -49.149708, - "Z": -273.68756 - }, - "TerritoryId": 959, - "InteractionType": "WalkTo" - }, { "DataId": 1044403, "Position": { @@ -52,7 +91,23 @@ "Z": -273.60956 }, "TerritoryId": 959, - "InteractionType": "CompleteQuest" + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": -203.5401, + "Y": -48.949707, + "Z": -273.60956 + }, + "TerritoryId": 959, + "MaximumDistance": 200 + } + } + } } ] } diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4696_A Sound Endeavor.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4696_A Sound Endeavor.json index a2c777b9..45394484 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4696_A Sound Endeavor.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4696_A Sound Endeavor.json @@ -58,7 +58,8 @@ "Z": -706.9963 }, "TerritoryId": 959, - "InteractionType": "Interact" + "InteractionType": "Interact", + "Fly": true } ] }, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4697_Prototypical Retrieval.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4697_Prototypical Retrieval.json index 4d767333..ceaa849e 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4697_Prototypical Retrieval.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4697_Prototypical Retrieval.json @@ -39,7 +39,38 @@ "TerritoryId": 959, "InteractionType": "Interact", "AetheryteShortcut": "Mare Lamentorum - Sinus Lacrimarum", - "Fly": true + "Fly": true, + "RequiredQuestVariables": [ + null, + null, + [ + 16 + ], + null, + null, + null + ] + }, + { + "DataId": 2013260, + "Position": { + "X": 725.063, + "Y": 141.37488, + "Z": 233.02039 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true, + "RequiredQuestVariables": [ + null, + null, + [ + 32 + ], + null, + null, + null + ] } ] }, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4698_Always Wear Protection.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4698_Always Wear Protection.json index d731dcbc..4d1bd175 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4698_Always Wear Protection.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4698_Always Wear Protection.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -30,11 +29,28 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1044583, + "Position": { + "X": -52.018066, + "Y": -137.4167, + "Z": -622.4613 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true + } ] }, { "Sequence": 255, "Steps": [ + { + "TerritoryId": 959, + "InteractionType": "Craft", + "ItemId": 38869, + "ItemCount": 4 + }, { "Position": { "X": -201.42024, @@ -42,7 +58,8 @@ "Z": -273.68756 }, "TerritoryId": 959, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "Fly": true }, { "DataId": 1044403, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4703_Fungi Frustrations.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4703_Fungi Frustrations.json index d731dcbc..3ec1809c 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4703_Fungi Frustrations.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4703_Fungi Frustrations.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -30,6 +29,39 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1044587, + "Position": { + "X": 354.02454, + "Y": 91.97786, + "Z": 509.14783 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "AetheryteShortcut": "Mare Lamentorum - Sinus Lacrimarum", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 959, + "InteractionType": "Craft", + "ItemId": 38877, + "ItemCount": 2 + }, + { + "DataId": 1044587, + "Position": { + "X": 354.02454, + "Y": 91.97786, + "Z": 509.14783 + }, + "TerritoryId": 959, + "InteractionType": "Interact" + } ] }, { @@ -42,7 +74,9 @@ "Z": -273.68756 }, "TerritoryId": 959, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true }, { "DataId": 1044403, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4704_For Every Mouth, a Carrot.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4704_For Every Mouth, a Carrot.json index d731dcbc..f547e2f9 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4704_For Every Mouth, a Carrot.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4704_For Every Mouth, a Carrot.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -30,6 +29,79 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1044412, + "Position": { + "X": -181.56714, + "Y": -49.19972, + "Z": -304.76843 + }, + "TerritoryId": 959, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1044590, + "Position": { + "X": -536.9497, + "Y": -157.99246, + "Z": -693.75146 + }, + "StopDistance": 1, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1044591, + "Position": { + "X": -502.58643, + "Y": -161.38867, + "Z": -773.251 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1044589, + "Position": { + "X": -433.03577, + "Y": -167.50002, + "Z": -741.7258 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } ] }, { @@ -42,7 +114,9 @@ "Z": -273.68756 }, "TerritoryId": 959, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true }, { "DataId": 1044403, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4705_Whisks for Whiskers.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4705_Whisks for Whiskers.json index d731dcbc..8fc84f3e 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4705_Whisks for Whiskers.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4705_Whisks for Whiskers.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -30,11 +29,28 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1044592, + "Position": { + "X": -493.40048, + "Y": -158.89024, + "Z": -384.29846 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true + } ] }, { "Sequence": 255, "Steps": [ + { + "TerritoryId": 959, + "InteractionType": "Craft", + "ItemId": 38879, + "ItemCount": 2 + }, { "Position": { "X": -201.42024, @@ -42,7 +58,9 @@ "Z": -273.68756 }, "TerritoryId": 959, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true }, { "DataId": 1044403, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4706_Sets, Reps, and Loporrits.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4706_Sets, Reps, and Loporrits.json index d731dcbc..343a44a3 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4706_Sets, Reps, and Loporrits.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4706_Sets, Reps, and Loporrits.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -30,6 +29,38 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1044412, + "Position": { + "X": -181.56714, + "Y": -49.19972, + "Z": -304.76843 + }, + "TerritoryId": 959, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 959, + "InteractionType": "Craft", + "ItemId": 38881, + "ItemCount": 1 + }, + { + "DataId": 1044602, + "Position": { + "X": 463.0349, + "Y": -167.81126, + "Z": -490.13504 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true + } ] }, { @@ -42,7 +73,9 @@ "Z": -273.68756 }, "TerritoryId": 959, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true }, { "DataId": 1044403, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4707_Lunar Beats for Hopping.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4707_Lunar Beats for Hopping.json index 185e6156..59172782 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4707_Lunar Beats for Hopping.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4707_Lunar Beats for Hopping.json @@ -1,5 +1,4 @@ - -{ +{ "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", "QuestSequence": [ diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4710_Clean Paws Make Good Artists.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4710_Clean Paws Make Good Artists.json index d731dcbc..4bd89209 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4710_Clean Paws Make Good Artists.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4710_Clean Paws Make Good Artists.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -30,11 +29,29 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1044610, + "Position": { + "X": 588.281, + "Y": -161.13907, + "Z": -761.0742 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true + } ] }, { "Sequence": 255, "Steps": [ + { + "TerritoryId": 959, + "InteractionType": "Craft", + "ItemId": 38885, + "ItemCount": 1 + }, { "Position": { "X": -201.42024, @@ -42,7 +59,9 @@ "Z": -273.68756 }, "TerritoryId": 959, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true }, { "DataId": 1044403, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4711_By the Muse Forsaken.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4711_By the Muse Forsaken.json index c917dfce..089db821 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4711_By the Muse Forsaken.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4711_By the Muse Forsaken.json @@ -1,5 +1,4 @@ - -{ +{ "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", "QuestSequence": [ diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4712_Art Is an Explosion!.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4712_Art Is an Explosion!.json index 2706bc50..61480268 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4712_Art Is an Explosion!.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4712_Art Is an Explosion!.json @@ -1,5 +1,4 @@ - -{ +{ "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", "QuestSequence": [ diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4713_Craft, Craft, Fashion, Baby.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4713_Craft, Craft, Fashion, Baby.json index 02199766..baa716af 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4713_Craft, Craft, Fashion, Baby.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4713_Craft, Craft, Fashion, Baby.json @@ -1,5 +1,4 @@ - -{ +{ "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", "QuestSequence": [ diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4714_Sparking Artist.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4714_Sparking Artist.json index f0656089..d731dcbc 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4714_Sparking Artist.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Dailies/4714_Sparking Artist.json @@ -1,5 +1,4 @@ - -{ +{ "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", "Disabled": true, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Story/4681_Must Be Dreaming(way).json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Story/4681_Must Be Dreaming(way).json new file mode 100644 index 00000000..290765e6 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Story/4681_Must Be Dreaming(way).json @@ -0,0 +1,176 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1044910, + "Position": { + "X": 23.75824, + "Y": 2.453333, + "Z": -12.680237 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Old Sharlayan", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1044911, + "Position": { + "X": 0.38146973, + "Y": -127.50014, + "Z": -457.14508 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1044914, + "Position": { + "X": -120.409, + "Y": -137.41672, + "Z": -526.63464 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1044913, + "Position": { + "X": 55.161255, + "Y": -129.40565, + "Z": -636.8048 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1044912, + "Position": { + "X": 61.41748, + "Y": -137.4167, + "Z": -606.28674 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1044911, + "Position": { + "X": 0.38146973, + "Y": -127.50014, + "Z": -457.14508 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1044919, + "Position": { + "X": 148.30237, + "Y": -49.589592, + "Z": -361.77618 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1044920, + "Position": { + "X": -170.42804, + "Y": -49.399723, + "Z": -289.5705 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "TerritoryId": 959, + "InteractionType": "Craft", + "ItemId": 38843, + "ItemCount": 3 + }, + { + "DataId": 1044921, + "Position": { + "X": -170.0008, + "Y": -49.34972, + "Z": -287.22064 + }, + "StopDistance": 5, + "TerritoryId": 959, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Story/4682_The Incredible Machines.json b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Story/4682_The Incredible Machines.json new file mode 100644 index 00000000..caaaa04f --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Loporrits/Story/4682_The Incredible Machines.json @@ -0,0 +1,147 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": -193.89642, + "Y": -49.19972, + "Z": -262.13477 + }, + "TerritoryId": 959, + "InteractionType": "None", + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true, + "StopDistance": 5, + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": -193.89642, + "Y": -49.19972, + "Z": -262.13477 + }, + "TerritoryId": 959, + "MaximumDistance": 100 + } + } + } + } + , + { + "DataId": 1044402, + "Position": { + "X": -193.89642, + "Y": -49.19972, + "Z": -262.13477 + }, + "TerritoryId": 959, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "Fly": true + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1044924, + "Position": { + "X": 344.625, + "Y": -168.00002, + "Z": -403.89105 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1044926, + "Position": { + "X": 500.96887, + "Y": -164.43474, + "Z": -698.3902 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1044928, + "Position": { + "X": -172.74744, + "Y": -49.199722, + "Z": -250.8736 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "TerritoryId": 959, + "InteractionType": "Craft", + "ItemId": 38845, + "ItemCount": 2 + }, + { + "DataId": 1044928, + "Position": { + "X": -172.74744, + "Y": -49.199722, + "Z": -250.8736 + }, + "TerritoryId": 959, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4607_Signs of the Past.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4607_Signs of the Past.json index e53d9af1..e70487a8 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4607_Signs of the Past.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4607_Signs of the Past.json @@ -22,8 +22,8 @@ "Steps": [ { "TerritoryId": 960, - "InteractionType": "None", - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 38281, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4609_Well Below Standard.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4609_Well Below Standard.json index 8f588d76..c50c4a58 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4609_Well Below Standard.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4609_Well Below Standard.json @@ -21,16 +21,9 @@ "Sequence": 255, "Steps": [ { - "DataId": 2013072, - "Position": { - "X": 456.65674, - "Y": 438.04077, - "Z": 310.2312 - }, "TerritoryId": 960, - "InteractionType": "Interact", - "TargetTerritoryId": 960, - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 38282, @@ -41,8 +34,19 @@ "ItemId": 38306, "ItemCount": 3 } - ], - "AetheryteShortcut": "Ultima Thule - Base Omicron" + ] + }, + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Base Omicron", + "TargetTerritoryId": 960 }, { "DataId": 1043417, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4610_A Brewing Reputation.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4610_A Brewing Reputation.json index 1e9036a2..8834ff36 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4610_A Brewing Reputation.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4610_A Brewing Reputation.json @@ -157,7 +157,8 @@ "Y": 437.5829, "Z": 333.63843 }, - "MaximumDistance": 100 + "MaximumDistance": 100, + "TerritoryId": 960 } } } diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4611_Grounds for Improvement.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4611_Grounds for Improvement.json index 9b34e831..9cdb099a 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4611_Grounds for Improvement.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4611_Grounds for Improvement.json @@ -1,6 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -21,9 +21,20 @@ "Sequence": 1, "Steps": [ { + "DataId": 2013074, + "Position": { + "X": 304.3412, + "Y": 483.48206, + "Z": 143.11438 + }, "TerritoryId": 960, - "InteractionType": "None", - "RequiredGatheredItems": [ + "InteractionType": "Interact", + "TargetTerritoryId": 1073 + }, + { + "TerritoryId": 1073, + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 38284, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4612_A Fertile Blend.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4612_A Fertile Blend.json index 368803c3..0635180f 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4612_A Fertile Blend.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4612_A Fertile Blend.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -21,6 +20,34 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 960, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 38283, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 38307, + "ItemCount": 3 + } + ] + }, + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "AetheryteShortcut": "Ultima Thule - Base Omicron" + }, { "DataId": 1043417, "Position": { diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4613_The Hunger Pangs.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4613_The Hunger Pangs.json index 368803c3..d6cab90b 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4613_The Hunger Pangs.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4613_The Hunger Pangs.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -18,9 +17,65 @@ } ] }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1044048, + "Position": { + "X": -347.70734, + "Y": 263.0844, + "Z": -463.73694 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Abode of the Ea", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1044049, + "Position": { + "X": -376.21124, + "Y": 266.08542, + "Z": -551.90356 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, { "Sequence": 255, "Steps": [ + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "AetheryteShortcut": "Ultima Thule - Base Omicron" + }, { "DataId": 1043417, "Position": { diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4614_The Robot and the Sea.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4614_The Robot and the Sea.json index 368803c3..71875e68 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4614_The Robot and the Sea.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4614_The Robot and the Sea.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -18,9 +17,65 @@ } ] }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2013074, + "Position": { + "X": 304.3412, + "Y": 483.48206, + "Z": 143.11438 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 1073 + }, + { + "TerritoryId": 1073, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 38285, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 38309, + "ItemCount": 3 + } + ] + }, + { + "DataId": 1044050, + "Position": { + "X": 472.03772, + "Y": 437.00162, + "Z": 336.6598 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Base Omicron", + "Mount": true + } + ] + }, { "Sequence": 255, "Steps": [ + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "Mount": true + }, { "DataId": 1043417, "Position": { diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4615_Using Their Heads.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4615_Using Their Heads.json index 368803c3..dece67eb 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4615_Using Their Heads.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4615_Using Their Heads.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -21,6 +20,36 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 960, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 38286, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 38310, + "ItemCount": 3 + } + ], + "Fly": true + }, + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Base Omicron", + "Mount": true, + "TargetTerritoryId": 960 + }, { "DataId": 1043417, "Position": { diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4616_Working Up a Thirst.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4616_Working Up a Thirst.json index 368803c3..82dd0e5a 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4616_Working Up a Thirst.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4616_Working Up a Thirst.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -18,9 +17,184 @@ } ] }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1044051, + "Position": { + "X": -543.20593, + "Y": 72.39467, + "Z": 298.146 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "RequiredQuestVariables": [ + null, + null, + null, + [ + { + "Low": 1 + } + ], + null, + null + ], + "AetheryteShortcut": "Ultima Thule - Reah Tahra", + "SkipConditions": { + "AetheryteShortcutIf": { + "RequiredQuestVariablesNotMet": true + } + }, + "Fly": true + }, + { + "DataId": 1044052, + "Position": { + "X": -110.27698, + "Y": 53.589848, + "Z": 538.41455 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "RequiredQuestVariables": [ + null, + null, + null, + [ + { + "Low": 1 + } + ], + null, + null + ], + "Fly": true, + "$": "It's the only pair that increases the significant element by 16" + }, + { + "DataId": 1044054, + "Position": { + "X": 83.69568, + "Y": 269.0921, + "Z": -483.0854 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "RequiredQuestVariables": [ + null, + null, + null, + [ + { + "Low": 2 + } + ], + null, + null + ], + "AetheryteShortcut": "Ultima Thule - Abode of the Ea", + "SkipConditions": { + "AetheryteShortcutIf": { + "RequiredQuestVariablesNotMet": true + } + }, + "Fly": true + }, + { + "DataId": 1044053, + "Position": { + "X": -225.66571, + "Y": 271.7499, + "Z": -308.6748 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "RequiredQuestVariables": [ + null, + null, + null, + [ + { + "Low": 2 + } + ], + null, + null + ], + "Fly": true + }, + { + "DataId": 1044056, + "Position": { + "X": 582.7573, + "Y": 441.71567, + "Z": 427.9392 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "RequiredQuestVariables": [ + null, + null, + null, + [ + { + "Low": 3 + } + ], + null, + null + ], + "AetheryteShortcut": "Ultima Thule - Base Omicron", + "SkipConditions": { + "AetheryteShortcutIf": { + "RequiredQuestVariablesNotMet": true + } + }, + "Fly": true + }, + { + "DataId": 1044055, + "Position": { + "X": 636.59106, + "Y": 438.6276, + "Z": 271.5343 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "RequiredQuestVariables": [ + null, + null, + null, + [ + { + "Low": 3 + } + ], + null, + null + ], + "Fly": true + } + ] + }, { "Sequence": 255, "Steps": [ + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Base Omicron", + "TargetTerritoryId": 960, + "Mount": true + }, { "DataId": 1043417, "Position": { diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4616_Working Up a Thirst.md b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4616_Working Up a Thirst.md new file mode 100644 index 00000000..98532d70 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4616_Working Up a Thirst.md @@ -0,0 +1,8 @@ +## Working Up a Thirst + +``` +0 0 0 ? 0 0 + 1 → 1044051 1044052 + 2 → 1044053 1044054 + 3 → 1044055 1044056 +``` diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4617_I'll Fish It Myself.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4617_I'll Fish It Myself.json index 368803c3..513129c6 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4617_I'll Fish It Myself.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4617_I'll Fish It Myself.json @@ -1,7 +1,6 @@ -{ +{ "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -18,9 +17,66 @@ } ] }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2013074, + "Position": { + "X": 304.3412, + "Y": 483.48206, + "Z": 143.11438 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 1073, + "$": "Without this step, there are times where it doesn't confirm automatically" + }, + { + "TerritoryId": 1073, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 38287, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 38311, + "ItemCount": 3 + } + ] + }, + { + "DataId": 1044057, + "Position": { + "X": 490.2876, + "Y": 436.9998, + "Z": 312.3064 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Base Omicron", + "Mount": true + } + ] + }, { "Sequence": 255, "Steps": [ + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "Mount": true + }, { "DataId": 1043417, "Position": { @@ -29,7 +85,8 @@ "Z": 148.11926 }, "TerritoryId": 960, - "InteractionType": "CompleteQuest" + "InteractionType": "CompleteQuest", + "Mount": true } ] } diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4619_A Grebuloff Out of Water.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4619_A Grebuloff Out of Water.json index 368803c3..064a2593 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4619_A Grebuloff Out of Water.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4619_A Grebuloff Out of Water.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -18,9 +17,40 @@ } ] }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1044058, + "Position": { + "X": 371.9386, + "Y": 288.95316, + "Z": -627.7409 + }, + "TerritoryId": 960, + "InteractionType": "UseItem", + "ItemId": 2003441, + "Fly": true, + "AetheryteShortcut": "Ultima Thule - Abode of the Ea" + } + ] + }, { "Sequence": 255, "Steps": [ + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "AetheryteShortcut": "Ultima Thule - Base Omicron", + "Mount": true + }, { "DataId": 1043417, "Position": { @@ -29,7 +59,8 @@ "Z": 148.11926 }, "TerritoryId": 960, - "InteractionType": "CompleteQuest" + "InteractionType": "CompleteQuest", + "Fly": true } ] } diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4620_A Taste of the Sea.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4620_A Taste of the Sea.json index e06131ed..94328961 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4620_A Taste of the Sea.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4620_A Taste of the Sea.json @@ -47,15 +47,9 @@ "Sequence": 2, "Steps": [ { - "DataId": 1044059, - "Position": { - "X": -15.304871, - "Y": 494.9991, - "Z": -68.16211 - }, "TerritoryId": 1073, - "InteractionType": "Interact", - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 38289, @@ -67,6 +61,16 @@ "ItemCount": 3 } ] + }, + { + "DataId": 1044059, + "Position": { + "X": -15.304871, + "Y": 494.9991, + "Z": -68.16211 + }, + "TerritoryId": 1073, + "InteractionType": "Interact" } ] }, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4622_Ea Epicurious.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4622_Ea Epicurious.json index afa62fdd..9662a58c 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4622_Ea Epicurious.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4622_Ea Epicurious.json @@ -21,17 +21,9 @@ "Sequence": 1, "Steps": [ { - "DataId": 1044064, - "Position": { - "X": 86.503296, - "Y": 269.08234, - "Z": -515.0683 - }, "TerritoryId": 960, - "InteractionType": "Interact", - "AetheryteShortcut": "Ultima Thule - Abode of the Ea", - "Fly": true, - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 38290, @@ -43,6 +35,18 @@ "ItemCount": 3 } ] + }, + { + "DataId": 1044064, + "Position": { + "X": 86.503296, + "Y": 269.08234, + "Z": -515.0683 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Abode of the Ea", + "Fly": true } ] }, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4623_I, Omicron.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4623_I, Omicron.json index 368803c3..6d818a49 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4623_I, Omicron.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4623_I, Omicron.json @@ -1,7 +1,6 @@ -{ +{ "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -18,9 +17,65 @@ } ] }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2013074, + "Position": { + "X": 304.3412, + "Y": 483.48206, + "Z": 143.11438 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 1073, + "$": "Without this step, there are times where it doesn't confirm automatically" + }, + { + "TerritoryId": 1073, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 38291, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 38315, + "ItemCount": 3 + } + ] + }, + { + "DataId": 1044065, + "Position": { + "X": 478.9348, + "Y": 437.0016, + "Z": 340.505 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Base Omicron" + } + ] + }, { "Sequence": 255, "Steps": [ + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "Mount": true + }, { "DataId": 1043417, "Position": { diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4624_Guardians of the Galaxy.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4624_Guardians of the Galaxy.json index 368803c3..780945ad 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4624_Guardians of the Galaxy.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4624_Guardians of the Galaxy.json @@ -1,7 +1,6 @@ -{ +{ "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -18,9 +17,79 @@ } ] }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2013073, + "Position": { + "X": 334.37085, + "Y": 483.17688, + "Z": 158.28174 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "Mount": true + }, + { + "DataId": 1044066, + "Position": { + "X": 493.58362, + "Y": 436.99985, + "Z": 317.09766 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1044068, + "Position": { + "X": 638.5748, + "Y": 438.6276, + "Z": 260.3341 + }, + "TerritoryId": 960, + "InteractionType": "Action", + "Action": "Electric Flux", + "Fly": true + }, + { + "DataId": 1044069, + "Position": { + "X": 668.0552, + "Y": 440.4633, + "Z": 360.79956 + }, + "TerritoryId": 960, + "InteractionType": "Action", + "Action": "Electric Flux", + "Fly": true + } + ] + }, { "Sequence": 255, "Steps": [ + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "AetheryteShortcut": "Ultima Thule - Base Omicron", + "Mount": true + }, { "DataId": 1043417, "Position": { @@ -29,7 +98,8 @@ "Z": 148.11926 }, "TerritoryId": 960, - "InteractionType": "CompleteQuest" + "InteractionType": "CompleteQuest", + "Mount": true } ] } diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4625_Corporeal Hand to Proverbial Mouth.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4625_Corporeal Hand to Proverbial Mouth.json index 368803c3..b1fc3e92 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4625_Corporeal Hand to Proverbial Mouth.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4625_Corporeal Hand to Proverbial Mouth.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -18,9 +17,66 @@ } ] }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2013074, + "Position": { + "X": 304.3412, + "Y": 483.4821, + "Z": 143.1448 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 1073 + }, + { + "TerritoryId": 1073, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 38292, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 38316, + "ItemCount": 3 + } + ] + }, + { + "DataId": 1044070, + "Position": { + "X": 132.34143, + "Y": 269.00006, + "Z": -654.6273 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Ultima Thule - Abode of the Ea" + } + ] + }, { "Sequence": 255, "Steps": [ + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "AetheryteShortcut": "Ultima Thule - Base Omicron", + "Mount": true + }, { "DataId": 1043417, "Position": { @@ -29,7 +85,8 @@ "Z": 148.11926 }, "TerritoryId": 960, - "InteractionType": "CompleteQuest" + "InteractionType": "CompleteQuest", + "Mount": true } ] } diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4626_Mush for Miw Miisv.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4626_Mush for Miw Miisv.json index 368803c3..1faf2416 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4626_Mush for Miw Miisv.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4626_Mush for Miw Miisv.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -18,9 +17,90 @@ } ] }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2013074, + "Position": { + "X": 304.3412, + "Y": 483.4821, + "Z": 143.1448 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 1073 + }, + { + "TerritoryId": 1073, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 38293, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 38317, + "ItemCount": 3 + } + ] + }, + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "AetheryteShortcut": "Ultima Thule - Base Omicron", + "Mount": true + }, + { + "DataId": 1043865, + "Position": { + "X": 301.8081, + "Y": 482.13644, + "Z": 165.02625 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Mount": true, + "TargetTerritoryId": 960, + "Fly": true + }, + { + "DataId": 1043936, + "Position": { + "X": 194.56775, + "Y": 567.4998, + "Z": 250.93457 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, { "Sequence": 255, "Steps": [ + { + "DataId": 1043864, + "Position": { + "X": 244.83093, + "Y": 564.8203, + "Z": 261.76843 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "Fly": true + }, { "DataId": 1043417, "Position": { @@ -29,7 +109,8 @@ "Z": 148.11926 }, "TerritoryId": 960, - "InteractionType": "CompleteQuest" + "InteractionType": "CompleteQuest", + "Fly": true } ] } diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4627_Corporeal Comforts.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4627_Corporeal Comforts.json index 1c319fca..f8be57ec 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4627_Corporeal Comforts.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4627_Corporeal Comforts.json @@ -21,17 +21,9 @@ "Sequence": 1, "Steps": [ { - "DataId": 1044071, - "Position": { - "X": 46.066895, - "Y": 268.99976, - "Z": -584.77155 - }, "TerritoryId": 960, - "InteractionType": "Interact", - "AetheryteShortcut": "Ultima Thule - Abode of the Ea", - "Fly": true, - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 38294, @@ -43,6 +35,18 @@ "ItemCount": 3 } ] + }, + { + "DataId": 1044071, + "Position": { + "X": 46.066895, + "Y": 268.99976, + "Z": -584.77155 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Abode of the Ea", + "Fly": true } ] }, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4629_A Light in the Dark.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4629_A Light in the Dark.json index f1d2760b..9ba18a23 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4629_A Light in the Dark.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4629_A Light in the Dark.json @@ -21,16 +21,9 @@ "Sequence": 1, "Steps": [ { - "DataId": 1044074, - "Position": { - "X": -585.90063, - "Y": 75.22713, - "Z": 256.67188 - }, "TerritoryId": 960, - "InteractionType": "Interact", - "AetheryteShortcut": "Ultima Thule - Reah Tahra", - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 38295, @@ -42,6 +35,17 @@ "ItemCount": 3 } ] + }, + { + "DataId": 1044074, + "Position": { + "X": -585.90063, + "Y": 75.22713, + "Z": 256.67188 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Reah Tahra" } ] }, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4630_Reclaiming the Taste of Home.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4630_Reclaiming the Taste of Home.json index 368803c3..6e075fa8 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4630_Reclaiming the Taste of Home.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4630_Reclaiming the Taste of Home.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -18,9 +17,77 @@ } ] }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2013074, + "Position": { + "X": 304.3412, + "Y": 483.48206, + "Z": 143.11438 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 1073 + }, + { + "DataId": 1044075, + "Position": { + "X": -64.4389, + "Y": 493.32922, + "Z": -4.409851 + }, + "TerritoryId": 1073, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 1073, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 38296, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 38320, + "ItemCount": 3 + } + ] + }, + { + "DataId": 1044075, + "Position": { + "X": -64.4389, + "Y": 493.32922, + "Z": -4.409851 + }, + "TerritoryId": 1073, + "InteractionType": "Interact" + } + ] + }, { "Sequence": 255, "Steps": [ + { + "DataId": 1043421, + "Position": { + "X": 2.4261475, + "Y": 499.87805, + "Z": 46.036377 + }, + "TerritoryId": 1073, + "InteractionType": "Interact", + "TargetTerritoryId": 960 + }, { "DataId": 1043417, "Position": { diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4631_Not Forgotten.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4631_Not Forgotten.json index f68b76f5..f3eca745 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4631_Not Forgotten.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4631_Not Forgotten.json @@ -21,17 +21,9 @@ "Sequence": 1, "Steps": [ { - "DataId": 1044076, - "Position": { - "X": -499.96188, - "Y": 77.00467, - "Z": 241.07727 - }, - "StopDistance": 9, "TerritoryId": 960, - "InteractionType": "Interact", - "AetheryteShortcut": "Ultima Thule - Reah Tahra", - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "QuestAcceptedAsClass": "Miner", "ItemId": 38297, @@ -43,6 +35,18 @@ "ItemCount": 3 } ] + }, + { + "DataId": 1044076, + "Position": { + "X": -499.96188, + "Y": 77.00467, + "Z": 241.07727 + }, + "StopDistance": 9, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Reah Tahra" } ] }, diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4632_Checking for Cavities.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4632_Checking for Cavities.json index 368803c3..bf720251 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4632_Checking for Cavities.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4632_Checking for Cavities.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "Disabled": true, "QuestSequence": [ { "Sequence": 0, @@ -18,9 +17,53 @@ } ] }, + { + "Sequence": 1, + "Steps": [ + { + "TerritoryId": 960, + "InteractionType": "Gather", + "AetheryteShortcut": "Ultima Thule - Reah Tahra", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 38299, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 38323, + "ItemCount": 3 + } + ] + }, + { + "DataId": 1044081, + "Position": { + "X": -503.99023, + "Y": 74.16917, + "Z": 261.82947 + }, + "TerritoryId": 960, + "InteractionType": "Interact" + } + ] + }, { "Sequence": 255, "Steps": [ + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "AetheryteShortcut": "Ultima Thule - Base Omicron" + }, { "DataId": 1043417, "Position": { diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4634_The Lost World.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4634_The Lost World.json index 368803c3..89f6b44c 100644 --- a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4634_The Lost World.json +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Dailies/4634_The Lost World.json @@ -1,7 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "liza", - "Disabled": true, + "Author": "plogon_enjoyer", "QuestSequence": [ { "Sequence": 0, @@ -18,9 +17,64 @@ } ] }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2013074, + "Position": { + "X": 304.3412, + "Y": 483.4821, + "Z": 143.1448 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 1073 + }, + { + "TerritoryId": 1073, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 38298, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 38322, + "ItemCount": 3 + } + ] + }, + { + "DataId": 1044077, + "Position": { + "X": 474.9674, + "Y": 437.00165, + "Z": 338.094 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Base Omicron" + } + ] + }, { "Sequence": 255, "Steps": [ + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "Mount": true + }, { "DataId": 1043417, "Position": { diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4601_The Café at the End of the Universe.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4601_The Café at the End of the Universe.json new file mode 100644 index 00000000..d1eb587c --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4601_The Café at the End of the Universe.json @@ -0,0 +1,254 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1042192, + "Position": { + "X": 200.48828, + "Y": 567.50006, + "Z": 242.78625 + }, + "TerritoryId": 960, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ultima Thule - Base Omicron", + "Fly": true + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1043518, + "Position": { + "X": 456.32092, + "Y": 437.00073, + "Z": 315.69385 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Base Omicron" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2013076, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2616 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_BANOMI001_04601_Q5_000_000", + "Yes": true + } + ] + }, + { + "DataId": 2013034, + "Position": { + "X": 304.37158, + "Y": 483.48206, + "Z": 143.14478 + }, + "TerritoryId": 960, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1043421, + "Position": { + "X": 2.4261475, + "Y": 499.87805, + "Z": 46.036377 + }, + "TerritoryId": 1073, + "InteractionType": "Interact", + "TargetTerritoryId": 960 + }, + { + "DataId": 1043865, + "Position": { + "X": 301.8081, + "Y": 482.13644, + "Z": 165.02625 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_BANOMI001_04601_Q6_000_000", + "Yes": true + } + ] + }, + { + "DataId": 1043586, + "Position": { + "X": 205.3711, + "Y": 567.50006, + "Z": 246.72314 + }, + "TerritoryId": 960, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "TerritoryId": 960, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 38276, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 38300, + "ItemCount": 3 + } + ] + }, + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Base Omicron", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_BANOMI001_04601_Q5_000_000", + "Yes": true + } + ] + }, + { + "DataId": 1043865, + "Position": { + "X": 301.8081, + "Y": 482.13644, + "Z": 165.02625 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_BANOMI001_04601_Q6_000_000", + "Yes": true + } + ] + }, + { + "DataId": 1044190, + "Position": { + "X": 203.84521, + "Y": 567.50006, + "Z": 246.87573 + }, + "TerritoryId": 960, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1043864, + "Position": { + "X": 244.83093, + "Y": 564.8203, + "Z": 261.76843 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_BANOMI001_04601_Q5_000_000", + "Yes": true + } + ] + }, + { + "DataId": 1043514, + "Position": { + "X": 303.82227, + "Y": 481.99442, + "Z": 154.83325 + }, + "TerritoryId": 960, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1043521, + "Position": { + "X": 3.3721924, + "Y": 499.6105, + "Z": 34.195435 + }, + "TerritoryId": 1073, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1043421, + "Position": { + "X": 2.4261475, + "Y": 499.87805, + "Z": 46.036377 + }, + "TerritoryId": 1073, + "InteractionType": "Interact", + "TargetTerritoryId": 960 + }, + { + "DataId": 1043514, + "Position": { + "X": 303.82227, + "Y": 481.99442, + "Z": 154.83325 + }, + "TerritoryId": 960, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4602_Longing So for All the Fish.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4602_Longing So for All the Fish.json new file mode 100644 index 00000000..ffafc60f --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4602_Longing So for All the Fish.json @@ -0,0 +1,260 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1043951, + "Position": { + "X": 303.8529, + "Y": 481.99442, + "Z": 154.83325 + }, + "TerritoryId": 960, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1043865, + "Position": { + "X": 301.8081, + "Y": 482.13644, + "Z": 165.02625 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_BANOMI002_04602_Q5_000_000", + "Yes": true + } + ], + "Mount": true + }, + { + "DataId": 1043586, + "Position": { + "X": 205.3711, + "Y": 567.4998, + "Z": 246.72314 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2012484, + "Position": { + "X": 492.48486, + "Y": 438.04077, + "Z": 365.43823 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Base Omicron", + "TargetTerritoryId": 960, + "Fly": true + }, + { + "DataId": 1043527, + "Position": { + "X": 463.5537, + "Y": 417.06747, + "Z": 407.12585 + }, + "TerritoryId": 960, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2012485, + "Position": { + "X": 469.3828, + "Y": 418.14294, + "Z": 403.3722 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960 + }, + { + "DataId": 1043529, + "Position": { + "X": 504.90576, + "Y": 436.9996, + "Z": 341.5122 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Mount": true + }, + { + "DataId": 1043530, + "Position": { + "X": 475.0896, + "Y": 437.00183, + "Z": 319.53918 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Mount": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1043531, + "Position": { + "X": 502.49475, + "Y": 436.99988, + "Z": 324.84924 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Mount": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1043533, + "Position": { + "X": 77.3479, + "Y": 269.00006, + "Z": -607.72107 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Abode of the Ea", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1043537, + "Position": { + "X": -321.24823, + "Y": 263.2611, + "Z": -523.7049 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "TerritoryId": 960, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 38277, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 38301, + "ItemCount": 3 + } + ] + }, + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Base Omicron", + "TargetTerritoryId": 960, + "Mount": true + }, + { + "DataId": 1043865, + "Position": { + "X": 301.8081, + "Y": 482.13644, + "Z": 165.02625 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "Fly": true + }, + { + "DataId": 1043585, + "Position": { + "X": 203.84521, + "Y": 567.4998, + "Z": 246.87573 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1043864, + "Position": { + "X": 244.83093, + "Y": 564.8203, + "Z": 261.76843 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_BANOMI002_04602_Q2_000_000", + "Yes": true + } + ], + "Fly": true + }, + { + "DataId": 1043951, + "Position": { + "X": 303.8529, + "Y": 481.99442, + "Z": 154.83325 + }, + "TerritoryId": 960, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4603_And Another Question.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4603_And Another Question.json new file mode 100644 index 00000000..9170a9ed --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4603_And Another Question.json @@ -0,0 +1,229 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1043951, + "Position": { + "X": 303.8529, + "Y": 481.99442, + "Z": 154.83325 + }, + "TerritoryId": 960, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1043865, + "Position": { + "X": 301.8081, + "Y": 482.13644, + "Z": 165.02625 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_BANOMI003_04603_Q9_000_000", + "Yes": true + } + ], + "Mount": true + }, + { + "DataId": 1043539, + "Position": { + "X": 205.92041, + "Y": 566, + "Z": 257.2517 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1043547, + "Position": { + "X": 110.30737, + "Y": 269.03677, + "Z": -626.7338 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Abode of the Ea", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1043552, + "Position": { + "X": 103.837524, + "Y": 269.41934, + "Z": -514.6105 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + }, + { + "DataId": 1043549, + "Position": { + "X": 46.219482, + "Y": 269.597, + "Z": -474.60138 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1043547, + "Position": { + "X": 110.30737, + "Y": 269.03677, + "Z": -626.7338 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1043549, + "Position": { + "X": 46.219482, + "Y": 269.597, + "Z": -474.60138 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_BANOMI003_04603_Q2_000_000", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "TerritoryId": 960, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 38278, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 38302, + "ItemCount": 3 + } + ], + "Fly": true + }, + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "AetheryteShortcut": "Ultima Thule - Base Omicron", + "TargetTerritoryId": 960, + "Mount": true + }, + { + "DataId": 1043865, + "Position": { + "X": 301.8081, + "Y": 482.13644, + "Z": 165.02625 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "Fly": true + }, + { + "DataId": 1043585, + "Position": { + "X": 203.84521, + "Y": 567.4998, + "Z": 246.87573 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1043864, + "Position": { + "X": 244.83093, + "Y": 564.8203, + "Z": 261.76843 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_BANOMI003_04603_Q8_000_000", + "Yes": true + } + ] + }, + { + "DataId": 1043951, + "Position": { + "X": 303.8529, + "Y": 481.99442, + "Z": 154.83325 + }, + "TerritoryId": 960, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4604_The Restaurateur's Guide to the Dragonstar.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4604_The Restaurateur's Guide to the Dragonstar.json new file mode 100644 index 00000000..0cdbce56 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4604_The Restaurateur's Guide to the Dragonstar.json @@ -0,0 +1,186 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1043951, + "Position": { + "X": 303.8529, + "Y": 481.99442, + "Z": 154.83325 + }, + "TerritoryId": 960, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1043865, + "Position": { + "X": 301.8081, + "Y": 482.13644, + "Z": 165.02625 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Mount": true, + "TargetTerritoryId": 960, + "DialogueChoices": [ + { + "Prompt": "TEXT_BANOMI004_04604_Q5_000_000", + "Type": "YesNo", + "Yes": true + } + ] + }, + { + "DataId": 1043586, + "Position": { + "X": 205.3711, + "Y": 567.4998, + "Z": 246.72314 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1043559, + "Position": { + "X": -573.3883, + "Y": 73.033104, + "Z": 212.78699 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Ultima Thule - Reah Tahra" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1011935, + "Position": { + "X": -285.63367, + "Y": 39.04305, + "Z": 53.72693 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "The Dravanian Forelands - Anyx Trine" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "TerritoryId": 398, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 38279, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 38303, + "ItemCount": 3 + } + ] + }, + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "Mount": true, + "AetheryteShortcut": "Ultima Thule - Base Omicron", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "DataId": 1043865, + "Position": { + "X": 301.8081, + "Y": 482.13644, + "Z": 165.02625 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true, + "TargetTerritoryId": 960 + }, + { + "DataId": 1043585, + "Position": { + "X": 203.84521, + "Y": 567.4998, + "Z": 246.87573 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1043864, + "Position": { + "X": 244.83093, + "Y": 564.8203, + "Z": 261.76843 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true, + "TargetTerritoryId": 960, + "DialogueChoices": [ + { + "Prompt": "TEXT_BANOMI004_04604_Q4_000_000", + "Type": "YesNo", + "Yes": true + } + ] + }, + { + "DataId": 1043951, + "Position": { + "X": 303.8529, + "Y": 481.99442, + "Z": 154.83325 + }, + "TerritoryId": 960, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4605_Mostly Heartless.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4605_Mostly Heartless.json new file mode 100644 index 00000000..32571b61 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4605_Mostly Heartless.json @@ -0,0 +1,246 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1043951, + "Position": { + "X": 303.8529, + "Y": 481.99442, + "Z": 154.83325 + }, + "TerritoryId": 960, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1043865, + "Position": { + "X": 301.8081, + "Y": 482.13644, + "Z": 165.02625 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "DialogueChoices": [ + { + "Prompt": "TEXT_BANOMI005_04605_Q5_000_000", + "Type": "YesNo", + "Yes": true + } + ] + }, + { + "DataId": 1043586, + "Position": { + "X": 205.3711, + "Y": 567.4998, + "Z": 246.72314 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1043530, + "Position": { + "X": 475.0896, + "Y": 437.00183, + "Z": 319.53918 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Ultima Thule - Base Omicron" + }, + { + "DataId": 1043529, + "Position": { + "X": 504.90576, + "Y": 436.9996, + "Z": 341.5122 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1043584, + "Position": { + "X": 803.7993, + "Y": 478.7742, + "Z": 200.73242 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "Mount": true, + "AetheryteShortcut": "Ultima Thule - Base Omicron" + }, + { + "DataId": 1043865, + "Position": { + "X": 301.8081, + "Y": 482.13644, + "Z": 165.02625 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "Fly": true + }, + { + "DataId": 1043586, + "Position": { + "X": 205.3711, + "Y": 567.4998, + "Z": 246.72314 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 2013033, + "Position": { + "X": 203.50952, + "Y": 567.4983, + "Z": 244.2511 + }, + "TerritoryId": 960, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "TerritoryId": 1073, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "QuestAcceptedAsClass": "Miner", + "ItemId": 38280, + "ItemCount": 3 + }, + { + "QuestAcceptedAsClass": "Botanist", + "ItemId": 38304, + "ItemCount": 3 + } + ] + }, + { + "DataId": 2013072, + "Position": { + "X": 456.65674, + "Y": 438.04077, + "Z": 310.2312 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "Mount": true, + "AetheryteShortcut": "Ultima Thule - Base Omicron" + }, + { + "DataId": 1043865, + "Position": { + "X": 301.8081, + "Y": 482.13644, + "Z": 165.02625 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true, + "TargetTerritoryId": 960 + }, + { + "DataId": 1043586, + "Position": { + "X": 205.3711, + "Y": 567.4998, + "Z": 246.72314 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1043864, + "Position": { + "X": 244.83093, + "Y": 564.8203, + "Z": 261.76843 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "DialogueChoices": [ + { + "Prompt": "TEXT_BANOMI005_04605_Q6_000_000", + "Type": "YesNo", + "Yes": true + } + ], + "Fly": true + }, + { + "DataId": 1043515, + "Position": { + "X": 303.39502, + "Y": 481.99442, + "Z": 152.81909 + }, + "TerritoryId": 960, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4606_Life, the Universe, and Coffee Beans.json b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4606_Life, the Universe, and Coffee Beans.json new file mode 100644 index 00000000..4137b700 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Allied Societies/Omicrons/Story/4606_Life, the Universe, and Coffee Beans.json @@ -0,0 +1,149 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "plogon_enjoyer", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1043951, + "Position": { + "X": 303.8529, + "Y": 481.99442, + "Z": 154.83325 + }, + "TerritoryId": 960, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1043865, + "Position": { + "X": 301.8081, + "Y": 482.13644, + "Z": 165.02625 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "TargetTerritoryId": 960, + "DialogueChoices": [ + { + "Prompt": "TEXT_BANOMI006_04606_Q5_000_000", + "Type": "YesNo", + "Yes": true + } + ] + }, + { + "DataId": 1043586, + "Position": { + "X": 205.3711, + "Y": 567.4998, + "Z": 246.72314 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1043424, + "Position": { + "X": 197.07019, + "Y": 567.49976, + "Z": 246.23486 + }, + "TerritoryId": 960, + "InteractionType": "Interact" + }, + { + "DataId": 1043423, + "Position": { + "X": 200.67139, + "Y": 567.4998, + "Z": 236.10278 + }, + "TerritoryId": 960, + "InteractionType": "Interact" + }, + { + "DataId": 1043592, + "Position": { + "X": 206.43921, + "Y": 567.49976, + "Z": 236.89624 + }, + "TerritoryId": 960, + "InteractionType": "Interact" + }, + { + "DataId": 1043593, + "Position": { + "X": 218.4939, + "Y": 565.99994, + "Z": 247.18079 + }, + "TerritoryId": 960, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1043585, + "Position": { + "X": 203.84521, + "Y": 567.4998, + "Z": 246.87573 + }, + "TerritoryId": 960, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1043864, + "Position": { + "X": 244.83093, + "Y": 564.8203, + "Z": 261.76843 + }, + "TerritoryId": 960, + "InteractionType": "Interact", + "Fly": true, + "TargetTerritoryId": 960, + "DialogueChoices": [ + { + "Prompt": "TEXT_BANOMI006_04606_Q6_000_000", + "Type": "YesNo", + "Yes": true + } + ] + }, + { + "DataId": 1043951, + "Position": { + "X": 303.8529, + "Y": 481.99442, + "Z": 154.83325 + }, + "TerritoryId": 960, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Class Quests/SGE/4067_Sage's Path.json b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4067_Sage's Path.json new file mode 100644 index 00000000..1cf674ab --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4067_Sage's Path.json @@ -0,0 +1,79 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039243, + "Position": { + "X": -90.28766, + "Y": 20, + "Z": 85.55737 + }, + "StopDistance": 5, + "TerritoryId": 129, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039265, + "Position": { + "X": -27.542603, + "Y": 42.597717, + "Z": 163.7445 + }, + "StopDistance": 5, + "TerritoryId": 134, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] Zephyr Gate (Middle La Noscea)" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039265, + "Position": { + "X": -27.542603, + "Y": 42.597717, + "Z": 163.7445 + }, + "StopDistance": 5, + "TerritoryId": 134, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Middle La Noscea - Summerford Farms", + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_AKTKBB101_04067_Q3_000_000", + "ExcelSheet": "quest/040/AktKbb101_04067", + "Yes": true + } + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Class Quests/SGE/4068_Sage's Focus.json b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4068_Sage's Focus.json new file mode 100644 index 00000000..18fbc7da --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4068_Sage's Focus.json @@ -0,0 +1,264 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "InteractionType": "UseItem", + "ItemId": 35873, + "Position": { + "X": -25.441345, + "Y": 42.597717, + "Z": 162.65016 + }, + "StopDistance": 5, + "TerritoryId": 134, + "AetheryteShortcut": "Middle La Noscea - Summerford Farms", + "Fly": true, + "Comment": "Try to use the coffer Bookwyrm's Attire Coffer (IL 385)", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "Item": { + "NotInInventory": true + } + } + } + }, + { + "TerritoryId": 134, + "InteractionType": "EquipItem", + "ItemId": 35778, + "Comment": "Try to Equip Stonegold Milpreves", + "SkipConditions": { + "StepIf": { + "Item": { + "NotInInventory": true + } + } + } + }, + { + "TerritoryId": 131, + "InteractionType": "EquipRecommended" + }, + { + "DataId": 1039265, + "Position": { + "X": -27.542603, + "Y": 42.597717, + "Z": 163.7445 + }, + "StopDistance": 5, + "TerritoryId": 134, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039244, + "Position": { + "X": 62.05847, + "Y": 207, + "Z": 49.332397 + }, + "StopDistance": 5, + "TerritoryId": 478, + "InteractionType": "Interact", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2011759, + "Position": { + "X": 20.065613, + "Y": 215.44214, + "Z": -108.171265 + }, + "StopDistance": 2, + "TerritoryId": 478, + "InteractionType": "Interact", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1039246, + "Position": { + "X": 71.64111, + "Y": 213.03185, + "Z": -110.7348 + }, + "StopDistance": 7, + "TerritoryId": 478, + "InteractionType": "Interact", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1039247, + "Position": { + "X": 68.7113, + "Y": 212.84532, + "Z": -109.9718 + }, + "StopDistance": 5, + "TerritoryId": 478, + "InteractionType": "Interact", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1039248, + "Position": { + "X": -612.2988, + "Y": 146.86842, + "Z": 42.435303 + }, + "TerritoryId": 399, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Idyllshire", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1039248, + "Position": { + "X": -612.2988, + "Y": 146.86842, + "Z": 42.435303 + }, + "StopDistance": 5, + "TerritoryId": 399, + "InteractionType": "SinglePlayerDuty", + "AetheryteShortcut": "Idyllshire", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InTerritory": [399], + "InSameTerritory": true + }, + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 7 + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1039248, + "Position": { + "X": -612.2988, + "Y": 146.86842, + "Z": 42.435303 + }, + "TerritoryId": 399, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Idyllshire", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InTerritory": [399], + "InSameTerritory": true + }, + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039249, + "Position": { + "X": 0.3508911, + "Y": 210.99998, + "Z": -17.746277 + }, + "TerritoryId": 478, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Class Quests/SGE/4069_Sands of Despair.json b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4069_Sands of Despair.json new file mode 100644 index 00000000..c90fe9ec --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4069_Sands of Despair.json @@ -0,0 +1,200 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039249, + "Position": { + "X": 0.3508911, + "Y": 210.99998, + "Z": -17.746277 + }, + "TerritoryId": 478, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039250, + "Position": { + "X": -29.251587, + "Y": -2.0576189, + "Z": -161.08954 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "AetheryteShortcut": "Central Thanalan - Black Brush Station" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1039256, + "Position": { + "X": 59.03711, + "Y": 2.9501379, + "Z": -225.97089 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Central Thanalan - Black Brush Station", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 177.52213, + "Y": -3.5157094, + "Z": -133.6495 + }, + "TerritoryId": 141, + "Fly": true, + "InteractionType": "Combat", + "AetheryteShortcut": "Central Thanalan - Black Brush Station", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "EnemySpawnType": "AutoOnEnterArea", + "ComplexCombatData": [ + { + "DataId": 14031, + "MinimumKillCount": 1 + } + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1039263, + "Position": { + "X": 185.25977, + "Y": -4.128851, + "Z": -126.78729 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "AetheryteShortcut": "Central Thanalan - Black Brush Station", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1039258, + "Position": { + "X": 122.72827, + "Y": 0.111846395, + "Z": -215.22852 + }, + "TerritoryId": 141, + "Fly": true, + "InteractionType": "Interact", + "AetheryteShortcut": "Central Thanalan - Black Brush Station", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1039271, + "Position": { + "X": 122.819824, + "Y": 0.10310017, + "Z": -215.2591 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "AetheryteShortcut": "Central Thanalan - Black Brush Station", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1039271, + "Position": { + "X": 122.819824, + "Y": 0.10310017, + "Z": -215.2591 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "AetheryteShortcut": "Central Thanalan - Black Brush Station", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039249, + "Position": { + "X": 0.3508911, + "Y": 210.99998, + "Z": -17.746277 + }, + "TerritoryId": 478, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Class Quests/SGE/4070_A Poisoned Gift.json b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4070_A Poisoned Gift.json new file mode 100644 index 00000000..c9cb488c --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4070_A Poisoned Gift.json @@ -0,0 +1,137 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039249, + "Position": { + "X": 0.3508911, + "Y": 210.99998, + "Z": -17.746277 + }, + "TerritoryId": 478, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKBB121_04070_Q1_000_000", + "Answer": "TEXT_AKTKBB121_04070_A1_000_001" + } + ], + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039274, + "Position": { + "X": 246.93665, + "Y": -24.995794, + "Z": 235.4314 + }, + "TerritoryId": 138, + "InteractionType": "Interact", + "AetheryteShortcut": "Western La Noscea - Aleport" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1039275, + "Position": { + "X": 236.9878, + "Y": -24.792122, + "Z": 202.594 + }, + "TerritoryId": 138, + "InteractionType": "Interact", + "AetheryteShortcut": "Western La Noscea - Aleport", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1039276, + "Position": { + "X": 239.79541, + "Y": -24.721268, + "Z": 205.34058 + }, + "StopDistance": 6, + "TerritoryId": 138, + "InteractionType": "Action", + "AetheryteShortcut": "Western La Noscea - Aleport", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "Action": "Diagnosis" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1039279, + "Position": { + "X": 239.9176, + "Y": -24.724764, + "Z": 205.24902 + }, + "StopDistance": 6, + "TerritoryId": 138, + "InteractionType": "Interact", + "AetheryteShortcut": "Western La Noscea - Aleport", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039249, + "Position": { + "X": 0.3508911, + "Y": 210.99998, + "Z": -17.746277 + }, + "TerritoryId": 478, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Class Quests/SGE/4071_Pledge of Hope.json b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4071_Pledge of Hope.json new file mode 100644 index 00000000..c22655dd --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4071_Pledge of Hope.json @@ -0,0 +1,182 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039249, + "Position": { + "X": 0.3508911, + "Y": 210.99998, + "Z": -17.746277 + }, + "TerritoryId": 478, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1012133, + "Position": { + "X": -26.840637, + "Y": 206.49944, + "Z": 28.67163 + }, + "TerritoryId": 478, + "InteractionType": "Interact", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -501.8255, + "Y": 147.54488, + "Z": -191.78416 + }, + "TerritoryId": 399, + "Fly": true, + "InteractionType": "Combat", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AethernetShortcutIf": { + "InSameTerritory": true + } + }, + "EnemySpawnType": "AutoOnEnterArea", + "ComplexCombatData": [ + { + "DataId": 14030, + "MinimumKillCount": 1 + } + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1039282, + "Position": { + "X": -504.87527, + "Y": 147.53165, + "Z": -199.17603 + }, + "TerritoryId": 399, + "InteractionType": "Action", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AethernetShortcutIf": { + "InSameTerritory": true + } + }, + "Action": "Diagnosis", + "Comment": "This might get stuck if we are high level and killed the mob too fast?, we ended up locking ourselves on eukrasia aura, Diagnosis can't be casted!" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -383.24777, + "Y": 147.98257, + "Z": 52.931572 + }, + "TerritoryId": 399, + "Fly": true, + "InteractionType": "Combat", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AethernetShortcutIf": { + "InSameTerritory": true + } + }, + "EnemySpawnType": "AutoOnEnterArea", + "ComplexCombatData": [ + { + "DataId": 14029, + "MinimumKillCount": 2 + } + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1039284, + "Position": { + "X": -382.49792, + "Y": 147.96011, + "Z": 47.53174 + }, + "TerritoryId": 399, + "Fly": false, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039249, + "Position": { + "X": 0.3508911, + "Y": 210.99998, + "Z": -17.746277 + }, + "TerritoryId": 478, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Class Quests/SGE/4072_Life Ephemeral, Path Eternal.json b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4072_Life Ephemeral, Path Eternal.json new file mode 100644 index 00000000..f1fbd031 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4072_Life Ephemeral, Path Eternal.json @@ -0,0 +1,107 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039249, + "Position": { + "X": 0.3508911, + "Y": 210.99998, + "Z": -17.746277 + }, + "TerritoryId": 478, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039288, + "Position": { + "X": 212.9701, + "Y": 52.213486, + "Z": -787.50287 + }, + "TerritoryId": 398, + "InteractionType": "SinglePlayerDuty", + "Fly": true, + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1039288, + "Position": { + "X": 212.9701, + "Y": 52.213486, + "Z": -787.50287 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1039288, + "Position": { + "X": 212.9701, + "Y": 52.213486, + "Z": -787.50287 + }, + "TerritoryId": 398, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039280, + "Position": { + "X": 1.2054443, + "Y": 210.99997, + "Z": -16.494995 + }, + "TerritoryId": 478, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Custom Deliveries/Ameliance/S8_Ameliance.json b/QuestPaths/6.x - Endwalker/Custom Deliveries/Ameliance/S8_Ameliance.json index 36229edd..9cd56890 100644 --- a/QuestPaths/6.x - Endwalker/Custom Deliveries/Ameliance/S8_Ameliance.json +++ b/QuestPaths/6.x - Endwalker/Custom Deliveries/Ameliance/S8_Ameliance.json @@ -5,6 +5,11 @@ { "Sequence": 0, "Steps": [ + { + "TerritoryId": 962, + "InteractionType": "Gather", + "ItemsToGather": [] + }, { "DataId": 1042241, "Position": { @@ -14,7 +19,6 @@ }, "TerritoryId": 962, "InteractionType": "Interact", - "RequiredGatheredItems": [], "AetheryteShortcut": "Old Sharlayan", "AethernetShortcut": [ "[Old Sharlayan] Aetheryte Plaza", diff --git a/QuestPaths/6.x - Endwalker/Custom Deliveries/Anden/4715_That's So Anden.json b/QuestPaths/6.x - Endwalker/Custom Deliveries/Anden/4715_That's So Anden.json index aaae0caf..59501265 100644 --- a/QuestPaths/6.x - Endwalker/Custom Deliveries/Anden/4715_That's So Anden.json +++ b/QuestPaths/6.x - Endwalker/Custom Deliveries/Anden/4715_That's So Anden.json @@ -13,7 +13,13 @@ "Z": 6.8207397 }, "TerritoryId": 819, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Crystarium", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/6.x - Endwalker/Custom Deliveries/Anden/S9_Anden.json b/QuestPaths/6.x - Endwalker/Custom Deliveries/Anden/S9_Anden.json index 1ac3ad73..b36972b0 100644 --- a/QuestPaths/6.x - Endwalker/Custom Deliveries/Anden/S9_Anden.json +++ b/QuestPaths/6.x - Endwalker/Custom Deliveries/Anden/S9_Anden.json @@ -5,6 +5,11 @@ { "Sequence": 0, "Steps": [ + { + "TerritoryId": 816, + "InteractionType": "Gather", + "ItemsToGather": [] + }, { "DataId": 1044547, "Position": { @@ -14,7 +19,6 @@ }, "TerritoryId": 816, "InteractionType": "Interact", - "RequiredGatheredItems": [], "AetheryteShortcut": "Il Mheg - Lydha Lran", "Fly": true, "DialogueChoices": [ diff --git a/QuestPaths/6.x - Endwalker/Custom Deliveries/Margrat/S10_Margrat.json b/QuestPaths/6.x - Endwalker/Custom Deliveries/Margrat/S10_Margrat.json index 1d5507af..e4d27b17 100644 --- a/QuestPaths/6.x - Endwalker/Custom Deliveries/Margrat/S10_Margrat.json +++ b/QuestPaths/6.x - Endwalker/Custom Deliveries/Margrat/S10_Margrat.json @@ -5,6 +5,11 @@ { "Sequence": 0, "Steps": [ + { + "TerritoryId": 956, + "InteractionType": "Gather", + "ItemsToGather": [] + }, { "Position": { "X": -44.066154, @@ -14,7 +19,6 @@ "TerritoryId": 956, "InteractionType": "WalkTo", "AetheryteShortcut": "Labyrinthos - Sharlayan Hamlet", - "RequiredGatheredItems": [], "Fly": true }, { diff --git a/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4154_Cooking Up a Culture.json b/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4154_Cooking Up a Culture.json index 30720303..8139e0c2 100644 --- a/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4154_Cooking Up a Culture.json +++ b/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4154_Cooking Up a Culture.json @@ -20,6 +20,17 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 962, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "ItemId": 35600, + "ItemCount": 6, + "Collectability": 600 + } + ] + }, { "DataId": 1038501, "Position": { @@ -34,13 +45,6 @@ "[Old Sharlayan] Aetheryte Plaza", "[Old Sharlayan] The Studium" ], - "RequiredGatheredItems": [ - { - "ItemId": 35600, - "ItemCount": 6, - "Collectability": 600 - } - ], "NextQuestId": 4155 } ] diff --git a/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4155_The Culture of Ceruleum.json b/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4155_The Culture of Ceruleum.json index ca598552..9e231382 100644 --- a/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4155_The Culture of Ceruleum.json +++ b/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4155_The Culture of Ceruleum.json @@ -20,6 +20,17 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 962, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "ItemId": 35601, + "ItemCount": 6, + "Collectability": 600 + } + ] + }, { "DataId": 1038501, "Position": { @@ -34,13 +45,6 @@ "[Old Sharlayan] Aetheryte Plaza", "[Old Sharlayan] The Studium" ], - "RequiredGatheredItems": [ - { - "ItemId": 35601, - "ItemCount": 6, - "Collectability": 600 - } - ], "NextQuestId": 4156 } ] diff --git a/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4156_The Culture of Carrots.json b/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4156_The Culture of Carrots.json index d25034d3..1e533484 100644 --- a/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4156_The Culture of Carrots.json +++ b/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4156_The Culture of Carrots.json @@ -20,6 +20,17 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 962, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "ItemId": 35602, + "ItemCount": 6, + "Collectability": 600 + } + ] + }, { "DataId": 1038501, "Position": { @@ -34,13 +45,6 @@ "[Old Sharlayan] Aetheryte Plaza", "[Old Sharlayan] The Studium" ], - "RequiredGatheredItems": [ - { - "ItemId": 35602, - "ItemCount": 6, - "Collectability": 600 - } - ], "NextQuestId": 4157 } ] diff --git a/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4157_Hinageshi in Hingashi.json b/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4157_Hinageshi in Hingashi.json index e2ebf553..3cf84c84 100644 --- a/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4157_Hinageshi in Hingashi.json +++ b/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4157_Hinageshi in Hingashi.json @@ -97,6 +97,16 @@ { "Sequence": 5, "Steps": [ + { + "TerritoryId": 628, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "ItemId": 35847, + "ItemCount": 1 + } + ] + }, { "DataId": 1038508, "Position": { @@ -110,12 +120,6 @@ "AethernetShortcut": [ "[Kugane] Aetheryte Plaza", "[Kugane] The Ruby Bazaar" - ], - "RequiredGatheredItems": [ - { - "ItemId": 35847, - "ItemCount": 1 - } ] } ] diff --git a/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4158_The Culture of the Past.json b/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4158_The Culture of the Past.json index aa12eb80..65f4d7b1 100644 --- a/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4158_The Culture of the Past.json +++ b/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4158_The Culture of the Past.json @@ -20,6 +20,17 @@ { "Sequence": 255, "Steps": [ + { + "TerritoryId": 962, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "ItemId": 35603, + "ItemCount": 6, + "Collectability": 600 + } + ] + }, { "DataId": 1038501, "Position": { @@ -34,13 +45,6 @@ "[Old Sharlayan] Aetheryte Plaza", "[Old Sharlayan] The Studium" ], - "RequiredGatheredItems": [ - { - "ItemId": 35603, - "ItemCount": 6, - "Collectability": 600 - } - ], "NextQuestId": 4159 } ] diff --git a/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4159_The Culture of Love.json b/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4159_The Culture of Love.json index a7dd1f4a..64daaad4 100644 --- a/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4159_The Culture of Love.json +++ b/QuestPaths/6.x - Endwalker/Custom Deliveries/Studium/MIN, BTN/4159_The Culture of Love.json @@ -20,6 +20,16 @@ { "Sequence": 1, "Steps": [ + { + "TerritoryId": 962, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "ItemId": 35848, + "ItemCount": 1 + } + ] + }, { "DataId": 1038503, "Position": { @@ -33,12 +43,6 @@ "AethernetShortcut": [ "[Old Sharlayan] Aetheryte Plaza", "[Old Sharlayan] The Studium" - ], - "RequiredGatheredItems": [ - { - "ItemId": 35848, - "ItemCount": 1 - } ] } ] diff --git a/QuestPaths/6.x - Endwalker/Leves/MIN/L1675_Rocks of a Feather.json b/QuestPaths/6.x - Endwalker/Leves/MIN/L1675_Rocks of a Feather.json new file mode 100644 index 00000000..7b90c2f7 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Leves/MIN/L1675_Rocks of a Feather.json @@ -0,0 +1,38 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -506.1484, + "Y": -22.671598, + "Z": -116.16144 + }, + "TerritoryId": 956, + "InteractionType": "InitiateLeve", + "AetheryteShortcut": "Labyrinthos - Aporia", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "TerritoryId": 956, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "ItemId": 2003172, + "AlternativeItemId": 2003173, + "ItemCount": 999 + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4363_Deeper into the Maze.json b/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4363_Deeper into the Maze.json index 75cf15c6..15fb42ae 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4363_Deeper into the Maze.json +++ b/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4363_Deeper into the Maze.json @@ -119,7 +119,7 @@ "Z": -519.18823 }, "TerritoryId": 956, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Snipe", "Comment": "Shoot Large Green Bird" } ] diff --git a/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4369_On Low Tide.json b/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4369_On Low Tide.json index 86c7a33f..cb13b753 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4369_On Low Tide.json +++ b/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4369_On Low Tide.json @@ -36,6 +36,15 @@ "TerritoryId": 957, "InteractionType": "Interact" }, + { + "Position": { + "X": 193.6185, + "Y": 1.9123514, + "Z": 713.436 + }, + "TerritoryId": 957, + "InteractionType": "WalkTo" + }, { "DataId": 1037622, "Position": { @@ -74,21 +83,24 @@ "Steps": [ { "Position": { - "X": 200.24112, - "Y": 1.7700036, - "Z": 712.99384 + "X": 223.328, + "Y": -0.6, + "Z": 752.7248 }, "TerritoryId": 957, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "DisableNavmesh": true, + "Sprint": true }, { "Position": { - "X": 240.97523, - "Y": 0.8542664, - "Z": 712.4415 + "X": 253.03053, + "Y": 0.7659681, + "Z": 732.0563 }, "TerritoryId": 957, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "DisableNavmesh": true }, { "DataId": 1038606, diff --git a/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4370_A Fishermans Friend.json b/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4370_A Fishermans Friend.json index d3ac2166..ab24c9ce 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4370_A Fishermans Friend.json +++ b/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4370_A Fishermans Friend.json @@ -67,6 +67,24 @@ { "Sequence": 3, "Steps": [ + { + "Position": { + "X": 198.9156, + "Y": 4.763735, + "Z": 657.83264 + }, + "TerritoryId": 957, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": 177.03275, + "Y": 4.763736, + "Z": 658.2807 + }, + "TerritoryId": 957, + "InteractionType": "WalkTo" + }, { "DataId": 1037626, "Position": { diff --git a/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4371_House of Divinities.json b/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4371_House of Divinities.json index 9429e7e6..bbe790e0 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4371_House of Divinities.json +++ b/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4371_House of Divinities.json @@ -21,6 +21,25 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1041331, + "Position": { + "X": 202.4414, + "Y": 1.769943, + "Z": 727.7484 + }, + "TerritoryId": 957, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "ExcelSheet": "quest/044/AktKza201_04489", + "Type": "List", + "Prompt": "TEXT_AKTKZA201_04489_Q1_000_004", + "Answer": "TEXT_AKTKZA201_04489_A1_000_002" + } + ], + "PickUpQuestId": 4489 + }, { "DataId": 2011951, "Position": { diff --git a/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4374_A Boys Errand.json b/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4374_A Boys Errand.json index 1a8b6161..f551b723 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4374_A Boys Errand.json +++ b/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4374_A Boys Errand.json @@ -20,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1037670, + "Position": { + "X": -508.84262, + "Y": -3.7109916E-05, + "Z": -20.767578 + }, + "TerritoryId": 957, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4203 + }, { "DataId": 1038642, "Position": { diff --git a/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4377_In the Dark of the Tower.json b/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4377_In the Dark of the Tower.json index 024cb04a..22f2d97a 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4377_In the Dark of the Tower.json +++ b/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4377_In the Dark of the Tower.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 952 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4379_The Color of Joy.json b/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4379_The Color of Joy.json index 0ba09440..1ea30440 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4379_The Color of Joy.json +++ b/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4379_The Color of Joy.json @@ -85,6 +85,11 @@ { "Sequence": 5, "Steps": [ + { + "TerritoryId": 963, + "InteractionType": "AttuneAethernetShard", + "AethernetShard": "[Radz-at-Han] The High Crucible of Al-Kimiya" + }, { "DataId": 1040276, "Position": { diff --git a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4383_A Frosty Reception.json b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4383_A Frosty Reception.json index c79e9a2c..5169a8f4 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4383_A Frosty Reception.json +++ b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4383_A Frosty Reception.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1010 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4384_Tracks in the Snow.json b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4384_Tracks in the Snow.json index 1bcbd2e0..6fdb1620 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4384_Tracks in the Snow.json +++ b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4384_Tracks in the Snow.json @@ -329,7 +329,8 @@ }, "TerritoryId": 958, "InteractionType": "WalkTo", - "Mount": false + "Mount": false, + "RestartNavigationIfCancelled": false } ] }, diff --git a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4385_How the Mighty Are Fallen.json b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4385_How the Mighty Are Fallen.json index e6498a49..8f6cf55a 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4385_How the Mighty Are Fallen.json +++ b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4385_How the Mighty Are Fallen.json @@ -118,7 +118,12 @@ "Z": 623.22424 }, "TerritoryId": 958, - "InteractionType": "Interact" + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 14085, + 14086 + ] } ] }, @@ -134,7 +139,8 @@ }, "TerritoryId": 958, "InteractionType": "Interact", - "Mount": false + "Mount": false, + "RestartNavigationIfCancelled": false } ] }, diff --git a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4387_A Way Forward.json b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4387_A Way Forward.json index 4ed240b8..64a3f4ad 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4387_A Way Forward.json +++ b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4387_A Way Forward.json @@ -153,6 +153,7 @@ "Y": 0.21427588, "Z": 147.8446 }, + "StopDistance": 5, "TerritoryId": 958, "InteractionType": "CompleteQuest" } diff --git a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4389_Personae non Gratae.json b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4389_Personae non Gratae.json index 9bee400f..47b951a3 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4389_Personae non Gratae.json +++ b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4389_Personae non Gratae.json @@ -163,7 +163,8 @@ "Z": -237.499 }, "TerritoryId": 958, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "Mount": true }, { "Position": { @@ -197,7 +198,8 @@ "Z": -244.6051 }, "TerritoryId": 958, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "Mount": true }, { "Position": { diff --git a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4393_Strange Bedfellows.json b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4393_Strange Bedfellows.json index 04342d49..36790c21 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4393_Strange Bedfellows.json +++ b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4393_Strange Bedfellows.json @@ -20,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1041753, + "Position": { + "X": -321.49237, + "Y": 22.009079, + "Z": 424.00232 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4498 + }, { "DataId": 1039917, "Position": { @@ -121,10 +132,30 @@ null, null, 64 - ] + ], + "NearPosition": { + "Position": { + "X": 496.94043, + "Y": 10.887661, + "Z": -418.57025 + }, + "TerritoryId": 958, + "MaximumDistance": 30 + } } } }, + { + "DataId": 1040633, + "Position": { + "X": 496.94043, + "Y": 10.887661, + "Z": -418.57025 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4232 + }, { "DataId": 2012111, "Position": { @@ -157,14 +188,15 @@ "Z": 94.77368 }, "TerritoryId": 958, - "InteractionType": "Instruction", + "InteractionType": "Combat", "EnemySpawnType": "AfterInteraction", "KillEnemyDataIds": [ 14079 ], - "Comment": "TODO Needs item use?", - "ItemId": 2003231, - "ItemUseHealthMaxPercent": 10, + "CombatItemUse": { + "ItemId": 2003231, + "Condition": "Incapacitated" + }, "CompletionQuestVariablesFlags": [ null, null, @@ -248,14 +280,15 @@ "Z": 396.96338 }, "TerritoryId": 958, - "InteractionType": "Instruction", + "InteractionType": "Combat", "EnemySpawnType": "AfterInteraction", "KillEnemyDataIds": [ 14080 ], - "Comment": "TODO Needs item use?", - "ItemId": 2003231, - "ItemUseHealthMaxPercent": 10, + "CombatItemUse": { + "ItemId": 2003231, + "Condition": "Incapacitated" + }, "DisableNavmesh": true, "CompletionQuestVariablesFlags": [ null, diff --git a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4394_In from the Cold.json b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4394_In from the Cold.json index 923bd663..aaa63db4 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4394_In from the Cold.json +++ b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4394_In from the Cold.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1011 - ], "QuestSequence": [ { "Sequence": 0, @@ -23,6 +20,36 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1040898, + "Position": { + "X": -433.12738, + "Y": 22.221891, + "Z": 460.80713 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4216 + }, + { + "DataId": 1041765, + "Position": { + "X": -323.4455, + "Y": 22, + "Z": 487.81555 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4502, + "AetheryteShortcut": "Garlemald - Camp Broken Glass", + "SkipConditions": { + "AetheryteShortcutIf": { + "QuestsCompleted": [ + 4502 + ] + } + } + }, { "DataId": 1039932, "Position": { @@ -38,8 +65,35 @@ "Type": "YesNo", "Prompt": "TEXT_AKTKMB115_04394_Q1_000_042", "Yes": true + }, + { + "Type": "List", + "ExcelSheet": "ContentTalk", + "Prompt": 254, + "Answer": 247, + "SpecialCondition": "NoDutyActions" + }, + { + "Type": "List", + "ExcelSheet": "ContentTalk", + "Prompt": 254, + "Answer": 248 } - ] + ], + "AetheryteShortcut": "Garlemald - Camp Broken Glass", + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": -357.99194, + "Y": 22, + "Z": 488.3954 + }, + "TerritoryId": 958, + "MaximumDistance": 200 + } + } + } } ] }, diff --git a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4395_Gateway of the Gods.json b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4395_Gateway of the Gods.json index 62032af3..485746d3 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4395_Gateway of the Gods.json +++ b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4395_Gateway of the Gods.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 969 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4396_A Trip to the Moon.json b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4396_A Trip to the Moon.json index f7234960..5a3b25cd 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4396_A Trip to the Moon.json +++ b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4396_A Trip to the Moon.json @@ -72,7 +72,7 @@ "Z": 632.41016 }, "TerritoryId": 959, - "InteractionType": "Interact", + "InteractionType": "Combat", "EnemySpawnType": "AfterInteraction", "KillEnemyDataIds": [ 14077 diff --git a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4397_Sea of Sorrow.json b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4397_Sea of Sorrow.json index 8c9efca9..ace37185 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4397_Sea of Sorrow.json +++ b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4397_Sea of Sorrow.json @@ -187,7 +187,8 @@ "Z": 523.24695 }, "TerritoryId": 959, - "InteractionType": "Interact", + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", "KillEnemyDataIds": [ 14076 ] diff --git a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4398_The Martyr.json b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4398_The Martyr.json index e590093e..0f24a82d 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4398_The Martyr.json +++ b/QuestPaths/6.x - Endwalker/MSQ/B-Garlemald/4398_The Martyr.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 992 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4402_A Taste of the Moon.json b/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4402_A Taste of the Moon.json index e30ded62..fe670f69 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4402_A Taste of the Moon.json +++ b/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4402_A Taste of the Moon.json @@ -251,7 +251,8 @@ "Z": -620.05035 }, "TerritoryId": 959, - "InteractionType": "Interact" + "InteractionType": "Interact", + "DelaySecondsAtStart": 3 } ] }, diff --git a/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4403_Styled a Hero.json b/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4403_Styled a Hero.json index 8020eced..2698d1f2 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4403_Styled a Hero.json +++ b/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4403_Styled a Hero.json @@ -12,6 +12,7 @@ "Y": -168, "Z": -618.7686 }, + "StopDistance": 5, "TerritoryId": 959, "InteractionType": "AcceptQuest" } diff --git a/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4404_Alls Vale That Endsvale.json b/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4404_Alls Vale That Endsvale.json index 8e339baa..2004e56f 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4404_Alls Vale That Endsvale.json +++ b/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4404_Alls Vale That Endsvale.json @@ -21,25 +21,34 @@ "Sequence": 1, "Steps": [ { + "DataId": 1037867, "Position": { - "X": 68.93551, - "Y": -48.912445, - "Z": -683.716 + "X": -301.62512, + "Y": -144.00002, + "Z": -491.14215 }, "TerritoryId": 959, - "InteractionType": "WalkTo", - "DisableNavmesh": true, - "Mount": true + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4240, + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "SkipConditions": { + "AetheryteShortcutIf": { + "QuestsCompleted": [ + 4240 + ] + } + } }, { + "DataId": 1039520, "Position": { - "X": 86.32549, - "Y": -137.4167, - "Z": -619.77936 + "X": -287.8615, + "Y": -143.50005, + "Z": -520.28687 }, "TerritoryId": 959, - "InteractionType": "WalkTo", - "DisableNavmesh": true + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4241 }, { "DataId": 1038928, @@ -49,7 +58,8 @@ "Z": -504.26492 }, "TerritoryId": 959, - "InteractionType": "Interact" + "InteractionType": "Interact", + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow" } ] }, diff --git a/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4406_Setting Things Straight.json b/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4406_Setting Things Straight.json index 0370b779..b84bfe28 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4406_Setting Things Straight.json +++ b/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4406_Setting Things Straight.json @@ -109,9 +109,9 @@ "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", "JumpDestination": { "Position": { - "X": 307.72073, - "Y": -143.15913, - "Z": -563.4788 + "X": 315.84082, + "Y": -156.2339, + "Z": -577.15063 }, "StopDistance": 5 } @@ -160,7 +160,7 @@ "Z": -654.13904 }, "TerritoryId": 959, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Snipe", "Comment": "Find \"Runninway?\"" } ] diff --git a/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4407_Heart of the Matter.json b/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4407_Heart of the Matter.json index 03185721..416eef1e 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4407_Heart of the Matter.json +++ b/QuestPaths/6.x - Endwalker/MSQ/C-MareLamentorum/4407_Heart of the Matter.json @@ -21,6 +21,44 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1041555, + "Position": { + "X": 26.443848, + "Y": -129.20917, + "Z": -536.9497 + }, + "TerritoryId": 959, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4516, + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "SkipConditions": { + "AetheryteShortcutIf": { + "QuestsCompleted": [ + 4516 + ] + } + } + }, + { + "DataId": 1041123, + "Position": { + "X": -81.864685, + "Y": -132.74333, + "Z": -521.6602 + }, + "TerritoryId": 959, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4253, + "DialogueChoices": [ + { + "ExcelSheet": "quest/042/AktKze014_04253", + "Type": "List", + "Prompt": "TEXT_AKTKZE014_04253_Q1_000_000", + "Answer": "TEXT_AKTKZE014_04253_A1_000_002" + } + ] + }, { "DataId": 2012664, "Position": { @@ -30,7 +68,6 @@ }, "TerritoryId": 959, "InteractionType": "Interact", - "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", "TargetTerritoryId": 959 }, { diff --git a/QuestPaths/6.x - Endwalker/MSQ/D-Thavnair2/4409_Skies Aflame.json b/QuestPaths/6.x - Endwalker/MSQ/D-Thavnair2/4409_Skies Aflame.json index 432f8f8d..37285324 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/D-Thavnair2/4409_Skies Aflame.json +++ b/QuestPaths/6.x - Endwalker/MSQ/D-Thavnair2/4409_Skies Aflame.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 970 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/D-Thavnair2/4416_Simple Pleasures.json b/QuestPaths/6.x - Endwalker/MSQ/D-Thavnair2/4416_Simple Pleasures.json index 1fc767aa..87d06dab 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/D-Thavnair2/4416_Simple Pleasures.json +++ b/QuestPaths/6.x - Endwalker/MSQ/D-Thavnair2/4416_Simple Pleasures.json @@ -113,15 +113,26 @@ "Sequence": 255, "Steps": [ { + "DataId": 1040669, "Position": { - "X": 425.544, - "Y": 3.1257756, - "Z": -218.32741 + "X": 381.64343, + "Y": 3.1891773, + "Z": -207.20227 }, "TerritoryId": 957, - "InteractionType": "WalkTo", - "Mount": true, - "DisableNavmesh": true + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4259 + }, + { + "DataId": 1040864, + "Position": { + "X": 462.51624, + "Y": 14.320099, + "Z": -219.86731 + }, + "TerritoryId": 957, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4257 }, { "DataId": 1039064, diff --git a/QuestPaths/6.x - Endwalker/MSQ/D-Thavnair2/4417_Under His Wing.json b/QuestPaths/6.x - Endwalker/MSQ/D-Thavnair2/4417_Under His Wing.json index 2abf1683..4eea5d8e 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/D-Thavnair2/4417_Under His Wing.json +++ b/QuestPaths/6.x - Endwalker/MSQ/D-Thavnair2/4417_Under His Wing.json @@ -12,7 +12,7 @@ "Y": 3.1168795, "Z": -262.62305 }, - "StopDistance": 5, + "StopDistance": 8, "TerritoryId": 957, "InteractionType": "AcceptQuest" } @@ -29,7 +29,8 @@ "Z": -597.83325 }, "TerritoryId": 957, - "InteractionType": "Interact" + "InteractionType": "Interact", + "Fly": true } ] }, @@ -45,7 +46,8 @@ "TerritoryId": 957, "InteractionType": "WalkTo", "Comment": "Travel to Radz-at-Han", - "TargetTerritoryId": 963 + "TargetTerritoryId": 963, + "Fly": true }, { "DataId": 1040354, diff --git a/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4421_Petalouda Hunt.json b/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4421_Petalouda Hunt.json index 04c452c5..c11ebd1d 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4421_Petalouda Hunt.json +++ b/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4421_Petalouda Hunt.json @@ -37,10 +37,23 @@ "Sequence": 2, "Steps": [ { + "Position": { + "X": 206.0426, + "Y": 20.561113, + "Z": 629.14465 + }, "DataId": 1039998, "TerritoryId": 961, - "InteractionType": "WaitForManualProgress", - "Comment": "Capture Mobs with less than 50% HP" + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "KillEnemyDataIds": [ + 13447, 13448, 13449 + ], + "CombatItemUse": { + "ItemId": 2003232, + "Condition": "Health%", + "Value": 50 + } } ] }, diff --git a/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4426_Aether to Aether.json b/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4426_Aether to Aether.json index f8495547..5df22e73 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4426_Aether to Aether.json +++ b/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4426_Aether to Aether.json @@ -21,6 +21,27 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1041328, + "Position": { + "X": 166.39954, + "Y": 9.457411, + "Z": 236.34692 + }, + "TerritoryId": 961, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4507 + }, + { + "Position": { + "X": -109.12761, + "Y": -34.0357, + "Z": 397.6694 + }, + "TerritoryId": 961, + "InteractionType": "WalkTo", + "$": "Avoids combat" + }, { "DataId": 1040073, "Position": { diff --git a/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4428_Verdict and Execution.json b/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4428_Verdict and Execution.json index 1283689e..200a1de6 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4428_Verdict and Execution.json +++ b/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4428_Verdict and Execution.json @@ -20,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1037969, + "Position": { + "X": -611.90204, + "Y": -22.39482, + "Z": 510.42944 + }, + "TerritoryId": 961, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4288 + }, { "DataId": 1040092, "Position": { diff --git a/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4432_Worthy of His Back.json b/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4432_Worthy of His Back.json index b315afad..c9b3c8c2 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4432_Worthy of His Back.json +++ b/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4432_Worthy of His Back.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1014 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4433_A Flower upon Your Return.json b/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4433_A Flower upon Your Return.json index 31df1410..28f34596 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4433_A Flower upon Your Return.json +++ b/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4433_A Flower upon Your Return.json @@ -69,6 +69,54 @@ { "Sequence": 3, "Steps": [ + { + "DataId": 1041369, + "Position": { + "X": -639.85657, + "Y": 162.30406, + "Z": -189.47137 + }, + "TerritoryId": 961, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Elpis - Poieten Oikos", + "PickUpQuestId": 4511, + "SkipConditions": { + "AetheryteShortcutIf": { + "QuestsCompleted": [ + 4511 + ] + } + } + }, + { + "DataId": 1041847, + "Position": { + "X": -484.2146, + "Y": 141.86789, + "Z": -97.21527 + }, + "TerritoryId": 961, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4313, + "AetheryteShortcut": "Elpis - Poieten Oikos", + "SkipConditions": { + "AetheryteShortcutIf": { + "QuestsCompleted": [ + 4313 + ] + } + }, + "$": "Teleporting at the start of the quest, as navmesh gets stuck on a rock otherwise" + }, + { + "Position": { + "X": -531.21313, + "Y": 159.97144, + "Z": -244.95073 + }, + "TerritoryId": 961, + "InteractionType": "WalkTo" + }, { "DataId": 2012151, "Position": { @@ -78,7 +126,6 @@ }, "TerritoryId": 961, "InteractionType": "Interact", - "AetheryteShortcut": "Elpis - Poieten Oikos", "DialogueChoices": [ { "Type": "YesNo", diff --git a/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4437_Caging the Messenger.json b/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4437_Caging the Messenger.json index f46eacb3..0a7e8e55 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4437_Caging the Messenger.json +++ b/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4437_Caging the Messenger.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 974 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4439_As the Heavens Burn.json b/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4439_As the Heavens Burn.json index 8b05a9d8..182ffffa 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4439_As the Heavens Burn.json +++ b/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4439_As the Heavens Burn.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1012 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4443_Wise Guides.json b/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4443_Wise Guides.json index d7c5efa7..56b49ff6 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4443_Wise Guides.json +++ b/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4443_Wise Guides.json @@ -45,7 +45,7 @@ }, "StopDistance": 5, "TerritoryId": 956, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Snipe", "Comment": "Find Points of Interest" } ] diff --git a/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4445_Sage Council.json b/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4445_Sage Council.json index 20ffb4a1..22e3ab2b 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4445_Sage Council.json +++ b/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4445_Sage Council.json @@ -20,6 +20,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1041667, + "Position": { + "X": 443.96118, + "Y": 65.162, + "Z": -105.4552 + }, + "TerritoryId": 956, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4480 + }, { "Position": { "X": 5.4520116, diff --git a/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4446_Hither and Yarns.json b/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4446_Hither and Yarns.json index cb81a4f3..b0856bfc 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4446_Hither and Yarns.json +++ b/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4446_Hither and Yarns.json @@ -21,6 +21,55 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1041129, + "Position": { + "X": -23.575256, + "Y": -31.53021, + "Z": 1.8463135 + }, + "TerritoryId": 956, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4329 + }, + { + "DataId": 1041683, + "Position": { + "X": -29.984009, + "Y": -31.53043, + "Z": -23.758362 + }, + "TerritoryId": 956, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4484, + "DialogueChoices": [ + { + "Type": "List", + "ExcelSheet": "quest/044/AktKzi101_04484", + "Prompt": "TEXT_AKTKZI101_04484_Q1_000_000", + "Answer": "TEXT_AKTKZI101_04484_A1_000_002" + } + ] + }, + { + "DataId": 1041313, + "Position": { + "X": 89.28052, + "Y": -17.530382, + "Z": -74.906555 + }, + "TerritoryId": 956, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4320, + "DialogueChoices": [ + { + "Type": "List", + "ExcelSheet": "quest/043/AktKzi005_04320", + "Prompt": "TEXT_AKTKZI005_04320_Q1_000_000", + "Answer": "TEXT_AKTKZI005_04320_A1_000_003" + } + ] + }, { "DataId": 1040444, "Position": { diff --git a/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4448_Bonds of Adamantite.json b/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4448_Bonds of Adamantite.json index b3cf7f42..d13967ff 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4448_Bonds of Adamantite.json +++ b/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4448_Bonds of Adamantite.json @@ -129,7 +129,8 @@ "Z": 301.63266 }, "TerritoryId": 956, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false } ] }, diff --git a/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4449_Her Children One and All.json b/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4449_Her Children One and All.json index fd828e38..5294bab4 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4449_Her Children One and All.json +++ b/QuestPaths/6.x - Endwalker/MSQ/F-Labyrinthos2/4449_Her Children One and All.json @@ -1,10 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 978, - 995 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4459_Victory x Lost.json b/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4459_Victory x Lost.json index 8a9d75af..70d7ed5e 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4459_Victory x Lost.json +++ b/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4459_Victory x Lost.json @@ -21,6 +21,28 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1040876, + "Position": { + "X": 49.42395, + "Y": 269.25684, + "Z": -523.2472 + }, + "TerritoryId": 960, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4342 + }, + { + "DataId": 1038016, + "Position": { + "X": 105.42456, + "Y": 269.29584, + "Z": -454.3069 + }, + "TerritoryId": 960, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4346 + }, { "DataId": 1039787, "Position": { diff --git a/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4460_x.json b/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4460_x.json index b8d7fcf7..de94694b 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4460_x.json +++ b/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4460_x.json @@ -22,15 +22,34 @@ "Sequence": 1, "Steps": [ { - "DataId": 2012032, + "DataId": 1041656, "Position": { - "X": 661.76843, - "Y": 439.96326, - "Z": 411.73413 + "X": 510.3075, + "Y": 436.9997, + "Z": 307.17932 }, "TerritoryId": 960, - "InteractionType": "AttuneAetherCurrent", - "AetherCurrentId": 2818391 + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4355 + }, + { + "DataId": 1038043, + "Position": { + "X": 470.4203, + "Y": 437.00183, + "Z": 315.81592 + }, + "TerritoryId": 960, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 4354, + "DialogueChoices": [ + { + "Type": "List", + "ExcelSheet": "quest/043/AktKzk001_04354", + "Prompt": "TEXT_AKTKZK001_04354_Q1_000_100", + "Answer": "TEXT_AKTKZK001_04354_A2_000_100" + } + ] }, { "DataId": 1040343, @@ -85,7 +104,7 @@ "Z": 375.50916 }, "TerritoryId": 960, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Snipe", "Comment": "Find Errant Omicron" } ] diff --git a/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4461_Hello World.json b/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4461_Hello World.json index 48ae6672..300ba565 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4461_Hello World.json +++ b/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4461_Hello World.json @@ -44,7 +44,7 @@ "Z": 398.42822 }, "TerritoryId": 960, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Snipe", "Comment": "Identify Anomaly (Head, Elbow or Knee)" } ] diff --git a/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4463_Youre Not Alone.json b/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4463_You're Not Alone.json similarity index 98% rename from QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4463_Youre Not Alone.json rename to QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4463_You're Not Alone.json index 46a36575..036101b1 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4463_Youre Not Alone.json +++ b/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4463_You're Not Alone.json @@ -212,7 +212,8 @@ }, "StopDistance": 5, "TerritoryId": 960, - "InteractionType": "CompleteQuest" + "InteractionType": "CompleteQuest", + "DisableNavmesh": true } ] } diff --git a/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4464_Endwalker.json b/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4464_Endwalker.json index 4fb91846..9a1abef6 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4464_Endwalker.json +++ b/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4464_Endwalker.json @@ -1,11 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 973, - 997, - 1013 - ], "QuestSequence": [ { "Sequence": 0, @@ -18,7 +13,8 @@ "Z": 4.2266846 }, "TerritoryId": 960, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "DisableNavmesh": true } ] }, diff --git a/QuestPaths/6.x - Endwalker/MSQ/H-6.1/4529_Alzadaals Legacy.json b/QuestPaths/6.x - Endwalker/MSQ/H-6.1/4529_Alzadaals Legacy.json index d05a5978..c79468bb 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/H-6.1/4529_Alzadaals Legacy.json +++ b/QuestPaths/6.x - Endwalker/MSQ/H-6.1/4529_Alzadaals Legacy.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1050 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/H-6.1/4531_Sharing the Wealth.json b/QuestPaths/6.x - Endwalker/MSQ/H-6.1/4531_Sharing the Wealth.json index 59686b6f..4b484b53 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/H-6.1/4531_Sharing the Wealth.json +++ b/QuestPaths/6.x - Endwalker/MSQ/H-6.1/4531_Sharing the Wealth.json @@ -20,11 +20,6 @@ { "Sequence": 1, "Steps": [ - { - "TerritoryId": 963, - "InteractionType": "AttuneAethernetShard", - "AethernetShard": "[Radz-at-Han] The High Crucible of Al-Kimiya" - }, { "DataId": 1039589, "Position": { diff --git a/QuestPaths/6.x - Endwalker/MSQ/I-6.2/4592_In Search of Azdaja.json b/QuestPaths/6.x - Endwalker/MSQ/I-6.2/4592_In Search of Azdaja.json index 007d0a43..cc6ea1fa 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/I-6.2/4592_In Search of Azdaja.json +++ b/QuestPaths/6.x - Endwalker/MSQ/I-6.2/4592_In Search of Azdaja.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1070 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/I-6.2/4594_Where Everything Begins.json b/QuestPaths/6.x - Endwalker/MSQ/I-6.2/4594_Where Everything Begins.json index ee0a66cc..98b7ea55 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/I-6.2/4594_Where Everything Begins.json +++ b/QuestPaths/6.x - Endwalker/MSQ/I-6.2/4594_Where Everything Begins.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1091 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/I-6.2/4597_The Wind Rises.json b/QuestPaths/6.x - Endwalker/MSQ/I-6.2/4597_The Wind Rises.json index 4e75ca6d..926a40f1 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/I-6.2/4597_The Wind Rises.json +++ b/QuestPaths/6.x - Endwalker/MSQ/I-6.2/4597_The Wind Rises.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1071 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/J-6.3/4673_An Unforeseen Bargain.json b/QuestPaths/6.x - Endwalker/MSQ/J-6.3/4673_An Unforeseen Bargain.json index 66b764ab..e19e8950 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/J-6.3/4673_An Unforeseen Bargain.json +++ b/QuestPaths/6.x - Endwalker/MSQ/J-6.3/4673_An Unforeseen Bargain.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1120 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/J-6.3/4674_King of the Mountain.json b/QuestPaths/6.x - Endwalker/MSQ/J-6.3/4674_King of the Mountain.json index 9d9c0f9e..130cb389 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/J-6.3/4674_King of the Mountain.json +++ b/QuestPaths/6.x - Endwalker/MSQ/J-6.3/4674_King of the Mountain.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1097 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/J-6.3/4677_Desires Untold.json b/QuestPaths/6.x - Endwalker/MSQ/J-6.3/4677_Desires Untold.json index 78cfbbc7..3a42aaaa 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/J-6.3/4677_Desires Untold.json +++ b/QuestPaths/6.x - Endwalker/MSQ/J-6.3/4677_Desires Untold.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1095 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/K-6.4/4736_Going Haam.json b/QuestPaths/6.x - Endwalker/MSQ/K-6.4/4736_Going Haam.json index 7a4cf1d4..9f738bc8 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/K-6.4/4736_Going Haam.json +++ b/QuestPaths/6.x - Endwalker/MSQ/K-6.4/4736_Going Haam.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1126 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/K-6.4/4742_Abyssal Dark.json b/QuestPaths/6.x - Endwalker/MSQ/K-6.4/4742_Abyssal Dark.json index 925170a0..8faf117c 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/K-6.4/4742_Abyssal Dark.json +++ b/QuestPaths/6.x - Endwalker/MSQ/K-6.4/4742_Abyssal Dark.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1140 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/L-6.5/4748_Down in the Dark.json b/QuestPaths/6.x - Endwalker/MSQ/L-6.5/4748_Down in the Dark.json index 766724f9..3930a8dd 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/L-6.5/4748_Down in the Dark.json +++ b/QuestPaths/6.x - Endwalker/MSQ/L-6.5/4748_Down in the Dark.json @@ -1,10 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1164, - 1168 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/MSQ/M-6.55/4752_The Game Is Afoot.json b/QuestPaths/6.x - Endwalker/MSQ/M-6.55/4752_The Game Is Afoot.json index 5525ce22..24e33e79 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/M-6.55/4752_The Game Is Afoot.json +++ b/QuestPaths/6.x - Endwalker/MSQ/M-6.55/4752_The Game Is Afoot.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1177 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/6.x - Endwalker/Raid Quests/4475_The Crystal from Beyond.json b/QuestPaths/6.x - Endwalker/Raid Quests/4475_The Crystal from Beyond.json new file mode 100644 index 00000000..800ee118 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Raid Quests/4475_The Crystal from Beyond.json @@ -0,0 +1,89 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041268, + "Position": { + "X": -81.1933, + "Y": 1.0795165, + "Z": 36.51477 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Old Sharlayan", + "AethernetShortcut": [ + "[Old Sharlayan] Aetheryte Plaza", + "[Old Sharlayan] The Baldesion Annex" + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039508, + "Position": { + "X": -639.704, + "Y": -27.175835, + "Z": 301.07568 + }, + "TerritoryId": 956, + "InteractionType": "Interact", + "AetheryteShortcut": "Labyrinthos - Aporia" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1033863, + "Position": { + "X": 118.02844, + "Y": 14.649026, + "Z": 7.156433 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Dossal Gate" + ], + "TargetTerritoryId": 844 + }, + { + "DataId": 2012425, + "Position": { + "X": 0.10675049, + "Y": -0.015319824, + "Z": -8.163635 + }, + "TerritoryId": 844, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041271, + "Position": { + "X": 542.5039, + "Y": 7.6627564, + "Z": 50.91931 + }, + "TerritoryId": 961, + "InteractionType": "CompleteQuest", + "NextQuestId": 4476 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Raid Quests/4476_Where Familiars Dare.json b/QuestPaths/6.x - Endwalker/Raid Quests/4476_Where Familiars Dare.json new file mode 100644 index 00000000..988e52cb --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Raid Quests/4476_Where Familiars Dare.json @@ -0,0 +1,88 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041271, + "Position": { + "X": 542.5039, + "Y": 7.6627564, + "Z": 50.91931 + }, + "TerritoryId": 961, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041272, + "Position": { + "X": 228.19861, + "Y": 7.3858566, + "Z": 239.94812 + }, + "TerritoryId": 961, + "InteractionType": "Interact", + "AetheryteShortcut": "Elpis - Anagnorisis", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1041273, + "Position": { + "X": 808.3772, + "Y": 152.22246, + "Z": -240.4975 + }, + "TerritoryId": 961, + "InteractionType": "Interact", + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_AKTKRA102_04476_SYSTEM_046", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 1025, + "InteractionType": "Duty", + "ContentFinderConditionId": 808 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041501, + "Position": { + "X": 101.51831, + "Y": -9.999997E-12, + "Z": 101.60974 + }, + "StopDistance": 5, + "TerritoryId": 1025, + "InteractionType": "CompleteQuest", + "NextQuestId": 4477 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Raid Quests/4477_Under the Surface.json b/QuestPaths/6.x - Endwalker/Raid Quests/4477_Under the Surface.json new file mode 100644 index 00000000..1c783ea6 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Raid Quests/4477_Under the Surface.json @@ -0,0 +1,48 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041276, + "Position": { + "X": 99.07678, + "Y": 7.6875, + "Z": -66.971924 + }, + "TerritoryId": 1025, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "TerritoryId": 1025, + "InteractionType": "Duty", + "ContentFinderConditionId": 810 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041502, + "Position": { + "X": 99.22937, + "Y": 7.6875, + "Z": -67.88745 + }, + "StopDistance": 4, + "TerritoryId": 1025, + "InteractionType": "CompleteQuest", + "NextQuestId": 4478 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Raid Quests/4478_The Fires of Creation.json b/QuestPaths/6.x - Endwalker/Raid Quests/4478_The Fires of Creation.json new file mode 100644 index 00000000..66b084ef --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Raid Quests/4478_The Fires of Creation.json @@ -0,0 +1,49 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041503, + "Position": { + "X": 100.87732, + "Y": 7.6875, + "Z": -67.61273 + }, + "StopDistance": 4, + "TerritoryId": 1025, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "TerritoryId": 1025, + "InteractionType": "Duty", + "ContentFinderConditionId": 806 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041278, + "Position": { + "X": 98.34436, + "Y": -1E-11, + "Z": -29.678833 + }, + "StopDistance": 5, + "TerritoryId": 1025, + "InteractionType": "CompleteQuest", + "NextQuestId": 4479 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Raid Quests/4479_Who Wards the Warders.json b/QuestPaths/6.x - Endwalker/Raid Quests/4479_Who Wards the Warders.json new file mode 100644 index 00000000..e59a44c0 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Raid Quests/4479_Who Wards the Warders.json @@ -0,0 +1,83 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041278, + "Position": { + "X": 98.34436, + "Y": -1E-11, + "Z": -29.678833 + }, + "StopDistance": 5, + "TerritoryId": 1025, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041279, + "Position": { + "X": 114.54944, + "Y": -9.999999E-12, + "Z": -25.742065 + }, + "TerritoryId": 1025, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 1025, + "InteractionType": "Duty", + "ContentFinderConditionId": 800 + } + ] + }, + { + "Sequence": 3 + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1041280, + "Position": { + "X": 98.95471, + "Y": -1E-11, + "Z": -29.953552 + }, + "StopDistance": 5, + "TerritoryId": 1025, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041934, + "Position": { + "X": -639.765, + "Y": -27.175016, + "Z": 301.1062 + }, + "TerritoryId": 956, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Labyrinthos - Aporia", + "NextQuestId": 4635 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Raid Quests/4635_An Unwelcome Visitor.json b/QuestPaths/6.x - Endwalker/Raid Quests/4635_An Unwelcome Visitor.json new file mode 100644 index 00000000..b323071b --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Raid Quests/4635_An Unwelcome Visitor.json @@ -0,0 +1,94 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041258, + "Position": { + "X": -639.704, + "Y": -27.175835, + "Z": 301.07568 + }, + "TerritoryId": 956, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Labyrinthos - Aporia", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041270, + "Position": { + "X": -830.5333, + "Y": 169.52928, + "Z": -56.809387 + }, + "TerritoryId": 961, + "InteractionType": "Interact", + "AetheryteShortcut": "Elpis - Poieten Oikos", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1043488, + "Position": { + "X": 643.48804, + "Y": 158.6388, + "Z": -254.35266 + }, + "TerritoryId": 961, + "InteractionType": "Interact", + "AetheryteShortcut": "Elpis - Anagnorisis", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1041273, + "Position": { + "X": 808.3772, + "Y": 152.22246, + "Z": -240.4975 + }, + "TerritoryId": 961, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1043489, + "Position": { + "X": 99.99231, + "Y": -9.999999E-12, + "Z": -22.171448 + }, + "StopDistance": 4, + "TerritoryId": 1025, + "InteractionType": "CompleteQuest", + "NextQuestId": 4636 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Raid Quests/4636_Masks of the Father.json b/QuestPaths/6.x - Endwalker/Raid Quests/4636_Masks of the Father.json new file mode 100644 index 00000000..f3528230 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Raid Quests/4636_Masks of the Father.json @@ -0,0 +1,49 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1043489, + "Position": { + "X": 99.99231, + "Y": -9.999999E-12, + "Z": -22.171448 + }, + "StopDistance": 4, + "TerritoryId": 1025, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "TerritoryId": 1025, + "InteractionType": "Duty", + "ContentFinderConditionId": 872 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1043492, + "Position": { + "X": 100.175415, + "Y": -9.999999E-12, + "Z": -25.833557 + }, + "StopDistance": 4, + "TerritoryId": 1025, + "InteractionType": "CompleteQuest", + "NextQuestId": 4637 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Raid Quests/4637_A Keyward's Gaol.json b/QuestPaths/6.x - Endwalker/Raid Quests/4637_A Keyward's Gaol.json new file mode 100644 index 00000000..660abf5d --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Raid Quests/4637_A Keyward's Gaol.json @@ -0,0 +1,78 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1043491, + "Position": { + "X": 101.79285, + "Y": -1E-11, + "Z": -26.901672 + }, + "TerritoryId": 1025, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1043494, + "Position": { + "X": 99.99231, + "Y": -9.999997E-12, + "Z": 99.83972 + }, + "TerritoryId": 1025, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1043493, + "Position": { + "X": 98.31384, + "Y": -9.999999E-12, + "Z": -26.901672 + }, + "TerritoryId": 1025, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 1025, + "InteractionType": "Duty", + "ContentFinderConditionId": 880 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1043506, + "Position": { + "X": 102.12854, + "Y": -9.999999E-12, + "Z": -26.56604 + }, + "StopDistance": 4, + "TerritoryId": 1025, + "InteractionType": "CompleteQuest", + "NextQuestId": 4638 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Raid Quests/4638_Servant of Violence.json b/QuestPaths/6.x - Endwalker/Raid Quests/4638_Servant of Violence.json new file mode 100644 index 00000000..d22994a2 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Raid Quests/4638_Servant of Violence.json @@ -0,0 +1,65 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1043506, + "Position": { + "X": 102.12854, + "Y": -9.999999E-12, + "Z": -26.56604 + }, + "StopDistance": 4, + "TerritoryId": 1025, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1043785, + "Position": { + "X": 98.55798, + "Y": -1E-11, + "Z": -26.474487 + }, + "StopDistance": 4, + "TerritoryId": 1025, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 1025, + "InteractionType": "Duty", + "ContentFinderConditionId": 876 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1043495, + "Position": { + "X": 98.71057, + "Y": -9.999999E-12, + "Z": -26.260803 + }, + "StopDistance": 4, + "TerritoryId": 1025, + "InteractionType": "CompleteQuest", + "NextQuestId": 4639 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Raid Quests/4639_One Final Wish.json b/QuestPaths/6.x - Endwalker/Raid Quests/4639_One Final Wish.json new file mode 100644 index 00000000..25697380 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Raid Quests/4639_One Final Wish.json @@ -0,0 +1,49 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1043495, + "Position": { + "X": 98.71057, + "Y": -9.999999E-12, + "Z": -26.260803 + }, + "StopDistance": 4, + "TerritoryId": 1025, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "TerritoryId": 1025, + "InteractionType": "Duty", + "ContentFinderConditionId": 883 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1043497, + "Position": { + "X": 95.93347, + "Y": -4.4899712E-13, + "Z": 95.59766 + }, + "StopDistance": 6, + "TerritoryId": 1093, + "InteractionType": "CompleteQuest", + "NextQuestId": 4640 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Raid Quests/4640_Truth Imperfect.json b/QuestPaths/6.x - Endwalker/Raid Quests/4640_Truth Imperfect.json new file mode 100644 index 00000000..f28a8e9e --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Raid Quests/4640_Truth Imperfect.json @@ -0,0 +1,95 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1043497, + "Position": { + "X": 95.93347, + "Y": -4.4899712E-13, + "Z": 95.59766 + }, + "StopDistance": 6, + "TerritoryId": 1093, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1043499, + "Position": { + "X": 100.35852, + "Y": 0, + "Z": 94.71277 + }, + "TerritoryId": 1093, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2013032, + "Position": { + "X": 99.9981, + "Y": 1.1515, + "Z": 120.2372 + }, + "TerritoryId": 1093, + "InteractionType": "Interact", + "TargetTerritoryId": 1025 + }, + { + "DataId": 1043500, + "Position": { + "X": 99.809204, + "Y": -1E-11, + "Z": -25.68097 + }, + "TerritoryId": 1025, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1043503, + "Position": { + "X": -639.704, + "Y": -27.177149, + "Z": 301.9912 + }, + "TerritoryId": 956, + "InteractionType": "Interact", + "AetheryteShortcut": "Labyrinthos - Aporia" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1043504, + "Position": { + "X": -639.704, + "Y": -27.177149, + "Z": 301.9912 + }, + "TerritoryId": 956, + "InteractionType": "CompleteQuest", + "NextQuestId": 4756 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Raid Quests/4756_Eater of Souls.json b/QuestPaths/6.x - Endwalker/Raid Quests/4756_Eater of Souls.json new file mode 100644 index 00000000..b0c28096 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Raid Quests/4756_Eater of Souls.json @@ -0,0 +1,101 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1043504, + "Position": { + "X": -639.704, + "Y": -27.177149, + "Z": 301.9912 + }, + "TerritoryId": 956, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Labyrinthos - Aporia", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039550, + "Position": { + "X": -620.7218, + "Y": -27.670597, + "Z": 302.17432 + }, + "TerritoryId": 956, + "InteractionType": "Interact", + "TargetTerritoryId": 956 + }, + { + "Position": { + "X": -431.53903, + "Y": -220.1193, + "Z": 301.76364 + }, + "TerritoryId": 956, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2013029, + "Position": { + "X": -238.97156, + "Y": -220.41656, + "Z": 340.6272 + }, + "TerritoryId": 956, + "InteractionType": "Interact", + "TargetTerritoryId": 1079 + }, + { + "DataId": 2013338, + "Position": { + "X": 18.753235, + "Y": 197.52808, + "Z": 519.06604 + }, + "TerritoryId": 1079, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 1079, + "InteractionType": "Duty", + "ContentFinderConditionId": 936 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1045330, + "Position": { + "X": 19.272095, + "Y": 197.41248, + "Z": 503.59338 + }, + "StopDistance": 5, + "TerritoryId": 1079, + "InteractionType": "CompleteQuest", + "NextQuestId": 4757 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Raid Quests/4757_Pandæmonium Awakens.json b/QuestPaths/6.x - Endwalker/Raid Quests/4757_Pandæmonium Awakens.json new file mode 100644 index 00000000..3a06fa86 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Raid Quests/4757_Pandæmonium Awakens.json @@ -0,0 +1,67 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1045335, + "Position": { + "X": 18.20398, + "Y": 197.41248, + "Z": 504.75305 + }, + "StopDistance": 4, + "TerritoryId": 1079, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1045338, + "Position": { + "X": 32.181274, + "Y": 197.55081, + "Z": 506.98096 + }, + "TerritoryId": 1079, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2 + }, + { + "Sequence": 3, + "Steps": [ + { + "TerritoryId": 1079, + "InteractionType": "Duty", + "ContentFinderConditionId": 938 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1045347, + "Position": { + "X": 98.98523, + "Y": 0, + "Z": 103.74609 + }, + "StopDistance": 4, + "TerritoryId": 1158, + "InteractionType": "CompleteQuest", + "NextQuestId": 4758 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Raid Quests/4758_The Emissary's Judgment.json b/QuestPaths/6.x - Endwalker/Raid Quests/4758_The Emissary's Judgment.json new file mode 100644 index 00000000..50f9d67d --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Raid Quests/4758_The Emissary's Judgment.json @@ -0,0 +1,48 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1045347, + "Position": { + "X": 98.98523, + "Y": 0, + "Z": 103.74609 + }, + "StopDistance": 4, + "TerritoryId": 1158, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "TerritoryId": 1158, + "InteractionType": "Duty", + "ContentFinderConditionId": 940 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1045348, + "Position": { + "X": 99.90076, + "Y": 0, + "Z": 104.478516 + }, + "TerritoryId": 1158, + "InteractionType": "CompleteQuest", + "NextQuestId": 4759 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Raid Quests/4759_A Mother's Touch.json b/QuestPaths/6.x - Endwalker/Raid Quests/4759_A Mother's Touch.json new file mode 100644 index 00000000..92b7964b --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Raid Quests/4759_A Mother's Touch.json @@ -0,0 +1,48 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1045383, + "Position": { + "X": 98.10022, + "Y": 0, + "Z": 103.837524 + }, + "TerritoryId": 1158, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "TerritoryId": 1158, + "InteractionType": "Duty", + "ContentFinderConditionId": 942 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1045357, + "Position": { + "X": 28.610596, + "Y": 197.55505, + "Z": 509.72766 + }, + "StopDistance": 5, + "TerritoryId": 1079, + "InteractionType": "CompleteQuest", + "NextQuestId": 4760 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Raid Quests/4760_Guided by the Past.json b/QuestPaths/6.x - Endwalker/Raid Quests/4760_Guided by the Past.json new file mode 100644 index 00000000..3a34daf7 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Raid Quests/4760_Guided by the Past.json @@ -0,0 +1,128 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1045356, + "Position": { + "X": 28.42749, + "Y": 197.55338, + "Z": 508.23218 + }, + "StopDistance": 4, + "TerritoryId": 1079, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2012293, + "Position": { + "X": 809.9336, + "Y": 151.81189, + "Z": -243.42719 + }, + "TerritoryId": 961, + "InteractionType": "Interact", + "AetheryteShortcut": "Elpis - Anagnorisis", + "Fly": true, + "TargetTerritoryId": 1025 + }, + { + "DataId": 2013031, + "Position": { + "X": 99.96179, + "Y": 8.8349, + "Z": -71.03082 + }, + "TerritoryId": 1025, + "InteractionType": "Interact", + "TargetTerritoryId": 1093 + }, + { + "DataId": 1045364, + "Position": { + "X": 96.36072, + "Y": -4.5494874E-13, + "Z": 85.43518 + }, + "TerritoryId": 1093, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -431.53903, + "Y": -220.1193, + "Z": 301.76364 + }, + "TerritoryId": 956, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Labyrinthos - Aporia", + "Fly": true + }, + { + "DataId": 2013029, + "Position": { + "X": -238.97156, + "Y": -220.41656, + "Z": 340.6272 + }, + "TerritoryId": 956, + "InteractionType": "Interact", + "TargetTerritoryId": 1079 + }, + { + "DataId": 1045371, + "Position": { + "X": 29.404175, + "Y": 197.55386, + "Z": 508.8424 + }, + "TerritoryId": 1079, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1045372, + "Position": { + "X": 28.030762, + "Y": 197.55408, + "Z": 508.87305 + }, + "TerritoryId": 1079, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1045332, + "Position": { + "X": -639.704, + "Y": -27.177149, + "Z": 301.9912 + }, + "TerritoryId": 956, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4217_Armored Up.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4217_Armored Up.json new file mode 100644 index 00000000..809210a0 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4217_Armored Up.json @@ -0,0 +1,117 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041122, + "Position": { + "X": 134.844, + "Y": -13.286316, + "Z": 649.8054 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest", + "Fly": true, + "$": "this thing starts out in the boonies" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041119, + "Position": { + "X": 135.85095, + "Y": -17.135998, + "Z": 567.8645 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 73.64728, + "Y": -18.777306, + "Z": 527.2946 + }, + "StopDistance": 0.5, + "TerritoryId": 958, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 14107 + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ], + "$.0": "0 0 0 0 0 0 -> 16 64 0 0 0 128" + }, + { + "Position": { + "X": 370.17212, + "Y": -18.937208, + "Z": 338.0957 + }, + "StopDistance": 0.5, + "TerritoryId": 958, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 14107 + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 135.85095, + "Y": -17.135998, + "Z": 567.8645 + }, + "StopDistance": 2000, + "TerritoryId": 958, + "InteractionType": "None", + "Mount": false + }, + { + "DataId": 1041119, + "Position": { + "X": 135.85095, + "Y": -17.135998, + "Z": 567.8645 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 4218 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4218_A Dream of Home.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4218_A Dream of Home.json new file mode 100644 index 00000000..281b1eec --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4218_A Dream of Home.json @@ -0,0 +1,94 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041119, + "Position": { + "X": 135.85095, + "Y": -17.135998, + "Z": 567.8645 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest", + "Fly": true, + "$": "again, if you happen to be at an aetheryte, very far without flyspeed" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041121, + "Position": { + "X": 208.51453, + "Y": 4.706692, + "Z": 77.77527 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZC009_04218_Q1_000_000", + "Answer": "TEXT_AKTKZC009_04218_A1_000_001" + } + ], + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2012474, + "Position": { + "X": 210.28455, + "Y": 5.355835, + "Z": 76.76807 + }, + "TerritoryId": 958, + "InteractionType": "Emote", + "Emote": "pray" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1042180, + "Position": { + "X": 127.06189, + "Y": -13.29479, + "Z": 650.8429 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1040898, + "Position": { + "X": -433.12738, + "Y": 22.221891, + "Z": 460.80713 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Camp Broken Glass" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4219_Your Inventory Is Not Full.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4219_Your Inventory Is Not Full.json new file mode 100644 index 00000000..f477359f --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4219_Your Inventory Is Not Full.json @@ -0,0 +1,98 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039381, + "Position": { + "X": -437.7661, + "Y": 22.209024, + "Z": 431.937 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1037733, + "Position": { + "X": -375.14313, + "Y": 22, + "Z": 513.54236 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ], + "$": "0 0 0 0 0 0 -> 16 1 0 0 0 128" + }, + { + "DataId": 1037747, + "Position": { + "X": -314.25964, + "Y": 22.00559, + "Z": 430.47217 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ], + "$": "16 1 0 0 0 128 -> 32 17 0 0 0 160" + }, + { + "DataId": 1037728, + "Position": { + "X": -369.52777, + "Y": 22.149097, + "Z": 391.95837 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "$": "32 17 0 0 0 160 -> 0 0 0 0 0 0", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039381, + "Position": { + "X": -437.7661, + "Y": 22.209024, + "Z": 431.937 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4220_Help Me to Help You.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4220_Help Me to Help You.json new file mode 100644 index 00000000..c9327df7 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4220_Help Me to Help You.json @@ -0,0 +1,69 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037728, + "Position": { + "X": -369.52777, + "Y": 22.149097, + "Z": 391.95837 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2012040, + "Position": { + "X": -229.14478, + "Y": 20.035034, + "Z": 319.417 + }, + "TerritoryId": 958, + "InteractionType": "Snipe", + "Comment": "Zoom in between the buildings and wait a few seconds." + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1039395, + "Position": { + "X": 83.84827, + "Y": 1.1234589, + "Z": 137.19385 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037728, + "Position": { + "X": -369.52777, + "Y": 22.149097, + "Z": 391.95837 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Camp Broken Glass" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4221_Heroes All.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4221_Heroes All.json new file mode 100644 index 00000000..09c425b0 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4221_Heroes All.json @@ -0,0 +1,98 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037733, + "Position": { + "X": -375.14313, + "Y": 22, + "Z": 513.54236 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039396, + "Position": { + "X": -318.227, + "Y": 22.376268, + "Z": 449.45447 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ], + "$": "0 0 48 0 0 0 -> 16 1 32 0 0 128" + }, + { + "DataId": 1039397, + "Position": { + "X": -317.76917, + "Y": 22, + "Z": 428.7937 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ], + "$": "16 1 32 0 0 128 -> 33 1 16 0 0 192" + }, + { + "DataId": 1039398, + "Position": { + "X": -318.62366, + "Y": 22.943655, + "Z": 391.4701 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "$": "33 1 16 0 0 192 -> 0 0 0 0 0 0", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037733, + "Position": { + "X": -375.14313, + "Y": 22, + "Z": 513.54236 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4222_Scouting for Scouts.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4222_Scouting for Scouts.json new file mode 100644 index 00000000..af84b253 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4222_Scouting for Scouts.json @@ -0,0 +1,87 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037755, + "Position": { + "X": -338.76556, + "Y": 22.462305, + "Z": 449.08826 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 147.65237, + "Y": -18.974234, + "Z": 434.61954 + }, + "TerritoryId": 958, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 14105, + 14106 + ], + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1039388, + "Position": { + "X": 145.4032, + "Y": -18.974236, + "Z": 435.0193 + }, + "TerritoryId": 958, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1039387, + "Position": { + "X": 144.82336, + "Y": -18.974234, + "Z": 436.27063 + }, + "TerritoryId": 958, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037755, + "Position": { + "X": -338.76556, + "Y": 22.462305, + "Z": 449.08826 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Camp Broken Glass" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4223_Bear Baiting.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4223_Bear Baiting.json new file mode 100644 index 00000000..ded2bfd6 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4223_Bear Baiting.json @@ -0,0 +1,107 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037751, + "Position": { + "X": -424.15503, + "Y": 22.196602, + "Z": 423.48352 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2011969, + "Position": { + "X": -371.26727, + "Y": 24.979004, + "Z": 151.20166 + }, + "TerritoryId": 958, + "InteractionType": "UseItem", + "ItemId": 2003195, + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ], + "$": "0 0 48 0 0 0 -> 17 0 32 0 0 64" + }, + { + "DataId": 2011968, + "Position": { + "X": -313.92395, + "Y": 21.805054, + "Z": 147.87512 + }, + "TerritoryId": 958, + "InteractionType": "UseItem", + "ItemId": 2003195, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ], + "$": "17 0 32 0 0 64 -> 33 16 16 0 0 192" + }, + { + "DataId": 2011970, + "Position": { + "X": -375.29565, + "Y": 21.164185, + "Z": 99.47351 + }, + "TerritoryId": 958, + "InteractionType": "Combat", + "ItemId": 2003195, + "EnemySpawnType": "AfterItemUse", + "KillEnemyDataIds": [ + 14104 + ], + "$": "33 16 16 0 0 192 -> 0 0 0 0 0 0", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037751, + "Position": { + "X": -424.15503, + "Y": 22.196602, + "Z": 423.48352 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Camp Broken Glass" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4224_Under Lock and Code.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4224_Under Lock and Code.json new file mode 100644 index 00000000..81796e0f --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4224_Under Lock and Code.json @@ -0,0 +1,131 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037729, + "Position": { + "X": -342.67188, + "Y": 22.377153, + "Z": 466.8496 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039392, + "Position": { + "X": -378.4085, + "Y": 22.105467, + "Z": 535.33215 + }, + "TerritoryId": 958, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1037731, + "Position": { + "X": -356.80176, + "Y": 22, + "Z": 518.9745 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ], + "$": "0 0 0 0 0 0 -> 0 128 0 0 0 64" + }, + { + "DataId": 1037754, + "Position": { + "X": -431.29626, + "Y": 22.278519, + "Z": 437.6134 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ], + "$": "0 128 0 0 0 64 -> 0 192 0 0 0 96" + }, + { + "DataId": 1039393, + "Position": { + "X": -415.9762, + "Y": 21.392963, + "Z": 384.9087 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ], + "$": "0 192 0 0 0 96 -> 0 224 0 0 0 112" + }, + { + "DataId": 1039392, + "Position": { + "X": -378.4085, + "Y": 22.105467, + "Z": 535.33215 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZC015_04224_Q1_000_000", + "Answer": "TEXT_AKTKZC015_04224_A1_000_000" + } + ], + "$": "any answer works, but you need all 3 to continue" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037729, + "Position": { + "X": -342.67188, + "Y": 22.377153, + "Z": 466.8496 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4225_And Then a Hero Comes Along.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4225_And Then a Hero Comes Along.json new file mode 100644 index 00000000..db8d1247 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4225_And Then a Hero Comes Along.json @@ -0,0 +1,123 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037767, + "Position": { + "X": 545.2506, + "Y": -36.61618, + "Z": -252.12488 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 541.0247, + "Y": -36.65, + "Z": -244.85428 + }, + "TerritoryId": 958, + "InteractionType": "WalkTo", + "$": "let's not get stuck on ceilings, now" + }, + { + "DataId": 2011973, + "Position": { + "X": 370.5653, + "Y": 10.788086, + "Z": -450.6447 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_AKTKZD001_04225_Q1_000_000", + "Yes": true + } + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ], + "$": "0 0 0 0 0 0 -> 0 0 0 128 0 64" + }, + { + "DataId": 2011974, + "Position": { + "X": 282.39868, + "Y": 10.788086, + "Z": -323.07928 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_AKTKZD001_04225_Q2_000_000", + "Yes": true + } + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ], + "$": "0 0 0 128 0 64 -> 0 0 0 192 0 96" + }, + { + "DataId": 2011972, + "Position": { + "X": 241.19922, + "Y": 11.673096, + "Z": -292.98853 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037767, + "Position": { + "X": 545.2506, + "Y": -36.61618, + "Z": -252.12488 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Tertium" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4226_With Folded Hands.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4226_With Folded Hands.json new file mode 100644 index 00000000..0001cbe9 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4226_With Folded Hands.json @@ -0,0 +1,62 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039399, + "Position": { + "X": 556.4812, + "Y": -40.250004, + "Z": -133.04346 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -159.59418, + "Y": 10.8, + "Z": -468.8335 + }, + "StopDistance": 0.5, + "TerritoryId": 958, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "KillEnemyDataIds": [ + 13468 + ], + "CombatItemUse": { + "ItemId": 2003202, + "Condition": "Health%", + "Value": 40 + }, + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039399, + "Position": { + "X": 556.4812, + "Y": -40.250004, + "Z": -133.04346 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Tertium" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4227_A Light That Never Goes Out.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4227_A Light That Never Goes Out.json new file mode 100644 index 00000000..55d6d41f --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4227_A Light That Never Goes Out.json @@ -0,0 +1,82 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037782, + "Position": { + "X": 545.2506, + "Y": -36.61608, + "Z": -230.24347 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 539.7576, + "Y": -36.65, + "Z": -237.16893 + }, + "TerritoryId": 958, + "InteractionType": "WalkTo", + "$": "tries to fly through subway car roof otherwise" + }, + { + "DataId": 2012049, + "Position": { + "X": 301.86914, + "Y": 10.788086, + "Z": -540.79504 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ], + "$": "0 0 0 0 0 0 -> 16 17 0 0 0 128", + "Fly": true + }, + { + "DataId": 2012050, + "Position": { + "X": 295.49097, + "Y": 11.306824, + "Z": -500.26703 + }, + "TerritoryId": 958, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037782, + "Position": { + "X": 545.2506, + "Y": -36.61608, + "Z": -230.24347 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Tertium" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4228_PS I Love You.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4228_PS I Love You.json new file mode 100644 index 00000000..f49961d5 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4228_PS I Love You.json @@ -0,0 +1,59 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041911, + "Position": { + "X": 508.8424, + "Y": -3.8202174, + "Z": -352.71234 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1040659, + "Position": { + "X": 514.5189, + "Y": -36.65, + "Z": -156.9696 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZD004_04228_Q1_000_000", + "Answer": "TEXT_AKTKZD004_04228_A1_000_002" + } + ], + "$": "this is the correct option, we can skip the other two" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037771, + "Position": { + "X": 524.28467, + "Y": -19.820217, + "Z": -298.81744 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4229_Brick by Brick, Tank by Tank.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4229_Brick by Brick, Tank by Tank.json new file mode 100644 index 00000000..2532ec56 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4229_Brick by Brick, Tank by Tank.json @@ -0,0 +1,124 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037779, + "Position": { + "X": 513.7865, + "Y": -36.65, + "Z": -135.91211 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039400, + "Position": { + "X": 364.76685, + "Y": 10.8, + "Z": -308.03394 + }, + "TerritoryId": 958, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 14103 + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ], + "$": "0 0 0 0 0 0 -> 16 0 16 0 0 128", + "Fly": true + }, + { + "DataId": 1040627, + "Position": { + "X": 282.00195, + "Y": 11.327993, + "Z": -365.8656 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ], + "$": "16 0 16 0 0 128 -> 32 16 16 0 0 160" + }, + { + "DataId": 1040626, + "Position": { + "X": 296.4065, + "Y": 10.799999, + "Z": -387.9912 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Mount": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ], + "$": "32 16 16 0 0 160 -> 49 16 16 0 0 224" + }, + { + "DataId": 1040628, + "Position": { + "X": 260.8224, + "Y": 10.849999, + "Z": -456.32104 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "$": "49 16 16 0 0 224 -> 0 16 0 0 0 0", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037779, + "Position": { + "X": 513.7865, + "Y": -36.65, + "Z": -135.91211 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Tertium" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4230_Rest, Thy Warfare O'er.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4230_Rest, Thy Warfare O'er.json new file mode 100644 index 00000000..19aad92e --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4230_Rest, Thy Warfare O'er.json @@ -0,0 +1,95 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1040645, + "Position": { + "X": 485.2522, + "Y": 10.800001, + "Z": -456.32104 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest", + "Fly": true + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -340.87164, + "Y": 10.803238, + "Z": -694.511 + }, + "TerritoryId": 958, + "InteractionType": "WalkTo", + "Fly": true, + "$": "need to land on the road to avoid awkward flypathing through the burned buildings." + }, + { + "Position": { + "X": -310.5188, + "Y": 10.813947, + "Z": -720.8323 + }, + "TerritoryId": 958, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 14102 + ], + "Fly": false + }, + { + "DataId": 14102, + "Position": { + "X": -313.222, + "Y": 10.821807, + "Z": -720.4852 + }, + "TerritoryId": 958, + "InteractionType": "UseItem", + "ItemId": 2003208 + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1040629, + "Position": { + "X": -310.47534, + "Y": 10.815676, + "Z": -720.2411 + }, + "TerritoryId": 958, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1040645, + "Position": { + "X": 485.2522, + "Y": 10.800001, + "Z": -456.32104 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Tertium", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4231_Some Like It Hot.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4231_Some Like It Hot.json new file mode 100644 index 00000000..f1467906 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4231_Some Like It Hot.json @@ -0,0 +1,133 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1040646, + "Position": { + "X": 503.9292, + "Y": -36.65, + "Z": -253.07086 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZD007_04231_Q1_000_000", + "Answer": "TEXT_AKTKZD007_04231_A1_000_001" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 545.40717, + "Y": -36.616177, + "Z": -267.17505 + }, + "TerritoryId": 958, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + }, + "$": "Without this step, it'll interact with the NPC in the wagon through the wall" + }, + { + "DataId": 1037766, + "Position": { + "X": 545.3115, + "Y": -36.616177, + "Z": -265.00348 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ], + "$": "0 0 0 0 0 0 -> 1 32 0 0 0 64" + }, + { + "DataId": 1037774, + "Position": { + "X": 518.181, + "Y": -36.65, + "Z": -212.14618 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZD007_04231_Q2_000_100", + "Answer": "TEXT_AKTKZD007_04231_A2_000_102" + } + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ], + "$": "1 32 0 0 0 64 -> 2 16 0 0 0 192" + }, + { + "DataId": 1040632, + "Position": { + "X": 537.4684, + "Y": -36.65, + "Z": -175.21942 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1040646, + "Position": { + "X": 503.9292, + "Y": -36.65, + "Z": -253.07086 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4233_Mama, She Is in Rubble Deep.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4233_Mama, She Is in Rubble Deep.json new file mode 100644 index 00000000..54100ea7 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4233_Mama, She Is in Rubble Deep.json @@ -0,0 +1,133 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037722, + "Position": { + "X": -308.0949, + "Y": 22, + "Z": 415.3047 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039353, + "Position": { + "X": -308.00336, + "Y": 22, + "Z": 413.80933 + }, + "TerritoryId": 958, + "InteractionType": "Emote", + "Emote": "soothe" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1039353, + "Position": { + "X": -308.00336, + "Y": 22, + "Z": 413.80933 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "$": "nosprint + nomount isn't really necessary here, but it looks a little unnatural to zip forward so far and wait, methinks." + }, + { + "DataId": 1039353, + "Position": { + "X": -310.48834, + "Y": 24.947939, + "Z": 377.09357 + }, + "TerritoryId": 958, + "InteractionType": "WaitForNpcAtPosition", + "NpcWaitDistance": 1, + "Mount": false, + "Sprint": false + }, + { + "DataId": 1039353, + "Position": { + "X": -351.1446, + "Y": 7.736393, + "Z": 303.24872 + }, + "TerritoryId": 958, + "InteractionType": "WaitForNpcAtPosition", + "NpcWaitDistance": 1, + "Mount": false, + "Sprint": false + }, + { + "DataId": 1039353, + "Position": { + "X": -334.03958, + "Y": 19.434929, + "Z": 175.00089 + }, + "TerritoryId": 958, + "InteractionType": "WaitForNpcAtPosition", + "NpcWaitDistance": 1, + "Mount": false, + "Sprint": false + }, + { + "DataId": 1039353, + "Position": { + "X": -321.72916, + "Y": 18.139357, + "Z": 98.16852 + }, + "TerritoryId": 958, + "InteractionType": "WaitForNpcAtPosition", + "NpcWaitDistance": 1, + "Mount": false, + "Sprint": false + }, + { + "DataId": 1039355, + "Position": { + "X": -319.4171, + "Y": 8.981749, + "Z": -9.475891 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Mount": false, + "Sprint": false + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037722, + "Position": { + "X": -308.0949, + "Y": 22, + "Z": 415.3047 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Camp Broken Glass" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4234_Put Your Plasma Where Your Mouth Is.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4234_Put Your Plasma Where Your Mouth Is.json new file mode 100644 index 00000000..52b9b801 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4234_Put Your Plasma Where Your Mouth Is.json @@ -0,0 +1,85 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039358, + "Position": { + "X": -321.43134, + "Y": 22.377153, + "Z": 473.167 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039359, + "Position": { + "X": 486.71704, + "Y": 11.195138, + "Z": -299.36682 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "AetheryteShortcut": "Garlemald - Tertium", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2011849, + "Position": { + "X": 486.04553, + "Y": 11.154297, + "Z": -296.37604 + }, + "TerritoryId": 958, + "InteractionType": "Snipe", + "Comment": "Snipe Magitek Colossi" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1039359, + "Position": { + "X": 486.71704, + "Y": 11.195138, + "Z": -299.36682 + }, + "TerritoryId": 958, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037729, + "Position": { + "X": -342.67188, + "Y": 22.377153, + "Z": 466.8496 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Camp Broken Glass" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4235_The Hero Never Bombs.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4235_The Hero Never Bombs.json new file mode 100644 index 00000000..3b373719 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4235_The Hero Never Bombs.json @@ -0,0 +1,135 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037751, + "Position": { + "X": -424.15503, + "Y": 22.196602, + "Z": 423.48352 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1040663, + "Position": { + "X": -318.10486, + "Y": 23.722221, + "Z": 353.93298 + }, + "TerritoryId": 958, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1040664, + "Position": { + "X": 382.22327, + "Y": 10.762111, + "Z": -713.3135 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "AetheryteShortcut": "Garlemald - Tertium", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2012052, + "Position": { + "X": 383.84058, + "Y": 11.48999, + "Z": -711.1162 + }, + "TerritoryId": 958, + "InteractionType": "UseItem", + "ItemId": 2003210, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ], + "$": "0 2 0 0 0 0 -> 17 1 0 0 0 64" + }, + { + "DataId": 2012051, + "Position": { + "X": 383.5354, + "Y": 11.306824, + "Z": -708.03394 + }, + "TerritoryId": 958, + "InteractionType": "UseItem", + "ItemId": 2003210, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1040664, + "Position": { + "X": 382.22327, + "Y": 10.762111, + "Z": -713.3135 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZD011_04235_Q1_000_000", + "Answer": "TEXT_AKTKZD011_04235_A1_000_001" + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037751, + "Position": { + "X": -424.15503, + "Y": 22.196602, + "Z": 423.48352 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Camp Broken Glass" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4236_Beasts of the Imperial Wild.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4236_Beasts of the Imperial Wild.json new file mode 100644 index 00000000..4a4dcc08 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4236_Beasts of the Imperial Wild.json @@ -0,0 +1,117 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037741, + "Position": { + "X": -434.50067, + "Y": 22.00912, + "Z": 470.32874 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1040666, + "Position": { + "X": -294.20923, + "Y": 21.732546, + "Z": 485.67932 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1040667, + "Position": { + "X": 323.26233, + "Y": -9.523699, + "Z": 251.88062 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2012053, + "Position": { + "X": 313.6797, + "Y": -11.978394, + "Z": 279.74353 + }, + "TerritoryId": 958, + "InteractionType": "Interact" + }, + { + "DataId": 14100, + "Position": { + "X": 302.5399, + "Y": -12.244642, + "Z": 304.46622 + }, + "TerritoryId": 958, + "InteractionType": "Combat", + "EnemySpawnType": "AfterItemUse", + "ItemId": 2003211, + "KillEnemyDataIds": [ + 14100 + ], + "$": "feel like there's a fancier way to do this but it's entirely functional" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1040667, + "Position": { + "X": 323.26233, + "Y": -9.523699, + "Z": 251.88062 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": false, + "$": "got a bit wonky on a slope here" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037741, + "Position": { + "X": -434.50067, + "Y": 22.00912, + "Z": 470.32874 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Camp Broken Glass" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4237_Ordnance Cleanup Committee.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4237_Ordnance Cleanup Committee.json new file mode 100644 index 00000000..0a4d3950 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4237_Ordnance Cleanup Committee.json @@ -0,0 +1,191 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037747, + "Position": { + "X": -314.25964, + "Y": 22.00559, + "Z": 430.47217 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -189.97284, + "Y": 15.907461, + "Z": -169.83481 + }, + "TerritoryId": 958, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "Flying": "Locked", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + } + }, + { + "DataId": 2012054, + "Position": { + "X": -156.05408, + "Y": 10.788086, + "Z": -235.40094 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ], + "$.0": "0 0 0 0 0 0 -> 1 16 0 0 0 128", + "Fly": true + }, + { + "DataId": 2012055, + "Position": { + "X": -129.83911, + "Y": 10.788086, + "Z": -270.95447 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ], + "Fly": true, + "$": "1 16 0 0 0 128 -> 2 32 0 0 0 192" + }, + { + "Position": { + "X": -223.12543, + "Y": 10.826223, + "Z": -368.8611 + }, + "TerritoryId": 958, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + } + }, + { + "Position": { + "X": -140.08179, + "Y": 16.226164, + "Z": -310.9478 + }, + "TerritoryId": 958, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "Flying": "Locked", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + } + }, + { + "DataId": 2012056, + "Position": { + "X": -234.6991, + "Y": 10.788086, + "Z": -367.2389 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ], + "$.0": "2 32 0 0 0 192 -> 3 48 0 0 0 224", + "Fly": true + }, + { + "DataId": 2012057, + "Position": { + "X": -246.93683, + "Y": 16.494995, + "Z": -413.016 + }, + "StopDistance": 1, + "TerritoryId": 958, + "InteractionType": "Interact", + "$.0": "3 48 0 0 0 224 -> 0 64 0 0 0 0", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037747, + "Position": { + "X": -314.25964, + "Y": 22.00559, + "Z": 430.47217 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Camp Broken Glass" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4238_A Place of Greater Safety.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4238_A Place of Greater Safety.json new file mode 100644 index 00000000..e77a859b --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4238_A Place of Greater Safety.json @@ -0,0 +1,62 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037755, + "Position": { + "X": -338.76556, + "Y": 22.462305, + "Z": 449.08826 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_AKTKZD014_04238_Q1_000_000", + "Yes": true, + "$": "history's least necessary YesNo" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1040640, + "Position": { + "X": -239.15472, + "Y": 11.232812, + "Z": -256.61102 + }, + "TerritoryId": 958, + "InteractionType": "UseItem", + "ItemId": 2003244, + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037755, + "Position": { + "X": -338.76556, + "Y": 22.462305, + "Z": 449.08826 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Camp Broken Glass" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4239_In the Skies above Garlemald.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4239_In the Skies above Garlemald.json new file mode 100644 index 00000000..07a989a0 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4239_In the Skies above Garlemald.json @@ -0,0 +1,76 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1040662, + "Position": { + "X": -373.18994, + "Y": 22.268795, + "Z": 385.00024 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1040642, + "Position": { + "X": 49.149292, + "Y": 0.78169787, + "Z": 90.89795 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1040642, + "Position": { + "X": 49.149292, + "Y": 0.78169787, + "Z": 90.89795 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_AKTKZD015_04239_Q1_000_000", + "Yes": true + } + ], + "$": "weird quest but works fine" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1040662, + "Position": { + "X": -373.18994, + "Y": 22.268795, + "Z": 385.00024 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Camp Broken Glass" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4499_Camp Broken Engines.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4499_Camp Broken Engines.json new file mode 100644 index 00000000..58860c93 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4499_Camp Broken Engines.json @@ -0,0 +1,62 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041755, + "Position": { + "X": -340.35254, + "Y": 22, + "Z": 502.037 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZC102_04499_Q1_000_000", + "Answer": "TEXT_AKTKZC102_04499_A1_000_002" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2012620, + "Position": { + "X": 64.68298, + "Y": -14.358765, + "Z": 395.22388 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true, + "$": "multi option, this one is correct so we can skip the rest" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041754, + "Position": { + "X": -340.84082, + "Y": 22, + "Z": 500.57214 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Camp Broken Glass", + "NextQuestId": 4500 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4500_Operation Reactivation.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4500_Operation Reactivation.json new file mode 100644 index 00000000..b967ad00 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4500_Operation Reactivation.json @@ -0,0 +1,80 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041755, + "Position": { + "X": -340.35254, + "Y": 22, + "Z": 502.037 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1040963, + "Position": { + "X": -325.27655, + "Y": 22.462305, + "Z": 450.49194 + }, + "TerritoryId": 958, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1041760, + "Position": { + "X": 413.87048, + "Y": -18.81719, + "Z": 612.05444 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 2012622, + "Position": { + "X": 413.35156, + "Y": -18.814392, + "Z": 614.43494 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZC103_04500_Q1_000_000", + "Answer": "TEXT_AKTKZC103_04500_A1_000_001" + }, + { + "Type": "List", + "Prompt": "TEXT_AKTKZC103_04500_Q2_000_000", + "Answer": "TEXT_AKTKZC103_04500_A2_000_001" + } + ], + "NextQuestId": 4501 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4501_Energy for All.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4501_Energy for All.json new file mode 100644 index 00000000..c452a4ea --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4501_Energy for All.json @@ -0,0 +1,91 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041761, + "Position": { + "X": 414.51123, + "Y": -18.808798, + "Z": 613.1837 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest", + "Fly": true, + "$": "you should be in range right away, but if you aren't then you might be 700 yalms away back at camp" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2012329, + "Position": { + "X": 376.82153, + "Y": -18.875488, + "Z": 512.65735 + }, + "TerritoryId": 958, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 14094, + 14095 + ], + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1041760, + "Position": { + "X": 413.87048, + "Y": -18.81719, + "Z": 612.05444 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1041761, + "Position": { + "X": 414.51123, + "Y": -18.808798, + "Z": 613.1837 + }, + "TerritoryId": 958, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1040963, + "Position": { + "X": -325.27655, + "Y": 22.462305, + "Z": 450.49194 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Camp Broken Glass" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4503_Longing for Home.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4503_Longing for Home.json new file mode 100644 index 00000000..3c5de1a7 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4503_Longing for Home.json @@ -0,0 +1,92 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041767, + "Position": { + "X": 541.03906, + "Y": -36.65, + "Z": -132.46362 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZD102_04503_Q1_000_000", + "Answer": "TEXT_AKTKZD102_04503_A1_000_001" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041769, + "Position": { + "X": 215.198, + "Y": 10.8, + "Z": -104.509094 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2012623, + "Position": { + "X": 168.26111, + "Y": 11.36792, + "Z": -102.92212 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "$": "can skip other interactables" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1041769, + "Position": { + "X": 215.198, + "Y": 10.8, + "Z": -104.509094 + }, + "TerritoryId": 958, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041767, + "Position": { + "X": 541.03906, + "Y": -36.65, + "Z": -132.46362 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Garlemald - Tertium", + "NextQuestId": 4504 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4504_Palatial Possibilities.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4504_Palatial Possibilities.json new file mode 100644 index 00000000..7c9f11c6 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4504_Palatial Possibilities.json @@ -0,0 +1,86 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041768, + "Position": { + "X": 539.9404, + "Y": -36.65, + "Z": -132.37207 + }, + "TerritoryId": 958, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZD103_04504_Q1_000_000", + "Answer": "TEXT_AKTKZD103_04504_A1_000_001" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041770, + "Position": { + "X": 157.30518, + "Y": 23.164677, + "Z": -415.36584 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2012331, + "Position": { + "X": 150.89636, + "Y": 23.147888, + "Z": -414.9386 + }, + "TerritoryId": 958, + "InteractionType": "Combat", + "EnemySpawnType": "AfterInteraction", + "KillEnemyDataIds": [ + 14092 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 2012629, + "Position": { + "X": 155.74878, + "Y": 23.147888, + "Z": -414.29773 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZD103_04504_Q2_000_000", + "Answer": "TEXT_AKTKZD103_04504_A2_000_001" + } + ], + "NextQuestId": 4505 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4505_Mum Is the Word.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4505_Mum Is the Word.json new file mode 100644 index 00000000..6b3722c5 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4505_Mum Is the Word.json @@ -0,0 +1,96 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041770, + "Position": { + "X": 157.30518, + "Y": 23.164677, + "Z": -415.36584 + }, + "StopDistance": 7, + "TerritoryId": 958, + "InteractionType": "AcceptQuest", + "Fly": true, + "$": "you should be right next to it, but if you aren't..." + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041771, + "Position": { + "X": -157.67151, + "Y": 10.8, + "Z": -530.6325 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true, + "$": "there's an underpass flypathing that /looks/ like it should get stuck, but doesn't. not sure if WoL size and/or mount would make it stuck; YMMV" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1041773, + "Position": { + "X": -78.446655, + "Y": 10.5, + "Z": -590.08167 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1041774, + "Position": { + "X": -44.815796, + "Y": 10.8, + "Z": -614.40454 + }, + "TerritoryId": 958, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041767, + "Position": { + "X": 541.03906, + "Y": -36.65, + "Z": -132.46362 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZD104_04505_Q1_000_000", + "Answer": "TEXT_AKTKZD104_04505_A1_000_002" + } + ], + "AetheryteShortcut": "Garlemald - Tertium", + "NextQuestId": 4506 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4506_Who Is Your Daddy.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4506_Who Is Your Daddy.json new file mode 100644 index 00000000..34d24b88 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4506_Who Is Your Daddy.json @@ -0,0 +1,142 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "goatzone", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041776, + "Position": { + "X": 541.89355, + "Y": -36.65, + "Z": -132.64673 + }, + "StopDistance": 5, + "TerritoryId": 958, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZD201_04506_Q1_000_000", + "Answer": "TEXT_AKTKZD201_04506_A1_000_002" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041754, + "Position": { + "X": -340.84082, + "Y": 22, + "Z": 500.57214 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZD201_04506_Q2_000_000", + "Answer": "TEXT_AKTKZD201_04506_A2_000_002" + } + ], + "AetheryteShortcut": "Garlemald - Camp Broken Glass" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1041778, + "Position": { + "X": -322.10272, + "Y": 10.85, + "Z": -576.04333 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2012746, + "Position": { + "X": -580.6211, + "Y": 10.482849, + "Z": -721.18713 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true, + "$": "other destination is a decoy, can skip" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -276.31705, + "Y": 10.799999, + "Z": -592.71124 + }, + "TerritoryId": 958, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 14091 + ], + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1041782, + "Position": { + "X": -274.0063, + "Y": 10.8, + "Z": -590.41736 + }, + "TerritoryId": 958, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041784, + "Position": { + "X": -342.67188, + "Y": 22, + "Z": 499.07666 + }, + "TerritoryId": 958, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZD201_04506_Q3_000_000", + "Answer": "TEXT_AKTKZD201_04506_A3_000_002" + } + ], + "AetheryteShortcut": "Garlemald - Camp Broken Glass" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Mare Lamentorum/4517_A Way to Make a Living.json b/QuestPaths/6.x - Endwalker/Side Quests/Mare Lamentorum/4517_A Way to Make a Living.json new file mode 100644 index 00000000..e9bf8326 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Mare Lamentorum/4517_A Way to Make a Living.json @@ -0,0 +1,158 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041556, + "Position": { + "X": 113.14563, + "Y": -133.07352, + "Z": -465.17133 + }, + "TerritoryId": 959, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041557, + "Position": { + "X": 292.2865, + "Y": -143.99998, + "Z": -477.8363 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 10.0736885, + "Y": 27.10196, + "Z": 448.53668 + }, + "TerritoryId": 959, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Mare Lamentorum - Sinus Lacrimarum", + "Fly": true + }, + { + "DataId": 1041559, + "Position": { + "X": 8.743347, + "Y": 27.418339, + "Z": 447.74548 + }, + "TerritoryId": 959, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2012508, + "Position": { + "X": -7.4312134, + "Y": 42.61841, + "Z": 428.27502 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "Position": { + "X": -54.65185, + "Y": 40.539097, + "Z": 458.56393 + }, + "TerritoryId": 959, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2012509, + "Position": { + "X": -56.50421, + "Y": 40.299072, + "Z": 459.64746 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 10.0736885, + "Y": 27.10196, + "Z": 448.53668 + }, + "TerritoryId": 959, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1041559, + "Position": { + "X": 8.743347, + "Y": 27.418339, + "Z": 447.74548 + }, + "TerritoryId": 959, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041557, + "Position": { + "X": 292.2865, + "Y": -143.99998, + "Z": -477.8363 + }, + "TerritoryId": 959, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true, + "NextQuestId": 4518 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Mare Lamentorum/4518_One Way or Another.json b/QuestPaths/6.x - Endwalker/Side Quests/Mare Lamentorum/4518_One Way or Another.json new file mode 100644 index 00000000..ce24c385 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Mare Lamentorum/4518_One Way or Another.json @@ -0,0 +1,123 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041558, + "Position": { + "X": 291.2489, + "Y": -144, + "Z": -477.95837 + }, + "TerritoryId": 959, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041560, + "Position": { + "X": 304.219, + "Y": 106.43858, + "Z": 37.00305 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1041817, + "Position": { + "X": 477.37842, + "Y": 140.67236, + "Z": 109.453 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2012510, + "Position": { + "X": 477.28687, + "Y": 140.64233, + "Z": 109.42236 + }, + "TerritoryId": 959, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 626.34064, + "Y": 143.6347, + "Z": 58.013206 + }, + "StopDistance": 0.5, + "TerritoryId": 959, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 14098, + 14099 + ], + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1041561, + "Position": { + "X": 625.0857, + "Y": 143.85222, + "Z": 56.321045 + }, + "StopDistance": 5, + "TerritoryId": 959, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041564, + "Position": { + "X": -338.36884, + "Y": -168, + "Z": -613.7637 + }, + "TerritoryId": 959, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Mare Lamentorum - Bestways Burrow", + "Fly": true, + "NextQuestId": 4519 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Mare Lamentorum/4519_Dream a Little Dream.json b/QuestPaths/6.x - Endwalker/Side Quests/Mare Lamentorum/4519_Dream a Little Dream.json new file mode 100644 index 00000000..a05d0649 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Mare Lamentorum/4519_Dream a Little Dream.json @@ -0,0 +1,328 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041903, + "Position": { + "X": -332.02112, + "Y": -168, + "Z": -609.91833 + }, + "StopDistance": 6.5, + "TerritoryId": 959, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2012512, + "Position": { + "X": -457.29767, + "Y": -158.12933, + "Z": -585.77856 + }, + "TerritoryId": 959, + "InteractionType": "UseItem", + "ItemId": 2003328, + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -325.3802, + "Y": -152.73842, + "Z": -746.0951 + }, + "TerritoryId": 959, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 2012513, + "Position": { + "X": -326.8025, + "Y": -151.26276, + "Z": -748.5008 + }, + "TerritoryId": 959, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": -356.33234, + "Y": -161.8501, + "Z": -738.81055 + }, + "TerritoryId": 959, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": -428.4264, + "Y": -168, + "Z": -676.6854 + }, + "StopDistance": 1, + "TerritoryId": 959, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -431.76593, + "Y": -166.55412, + "Z": -679.5478 + }, + "DelaySeconds": 0.1 + }, + "Comment": "Platform 1" + }, + { + "Position": { + "X": -431.76593, + "Y": -166.55412, + "Z": -679.5478 + }, + "StopDistance": 1, + "TerritoryId": 959, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -430.03564, + "Y": -165.05414, + "Z": -682.2485 + }, + "DelaySeconds": 0.1 + }, + "Comment": "Platform 2" + }, + { + "Position": { + "X": -430.03564, + "Y": -165.05414, + "Z": -682.2485 + }, + "StopDistance": 1, + "TerritoryId": 959, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -428.49857, + "Y": -163.55414, + "Z": -684.8062 + }, + "DelaySeconds": 0.1 + }, + "Comment": "Platform 3" + }, + { + "Position": { + "X": -428.49857, + "Y": -163.55414, + "Z": -684.8062 + }, + "StopDistance": 1, + "TerritoryId": 959, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -427.48633, + "Y": -162.05414, + "Z": -687.71533 + }, + "DelaySeconds": 0.1 + }, + "Comment": "Platform 4" + }, + { + "Position": { + "X": -427.48633, + "Y": -162.05414, + "Z": -687.71533 + }, + "StopDistance": 1, + "TerritoryId": 959, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -427.7118, + "Y": -160.55414, + "Z": -691.17804 + }, + "DelaySeconds": 0.1 + }, + "Comment": "Platform 5" + }, + { + "Position": { + "X": -427.7118, + "Y": -160.55414, + "Z": -691.17804 + }, + "StopDistance": 1, + "TerritoryId": 959, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -428.33154, + "Y": -159.05412, + "Z": -694.7048 + }, + "DelaySeconds": 0.1 + }, + "Comment": "Platform 6" + }, + { + "Position": { + "X": -434.91986, + "Y": -158.88745, + "Z": -693.17865 + }, + "TerritoryId": 959, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, + { + "DataId": 2012611, + "Position": { + "X": -450.33954, + "Y": -158.12933, + "Z": -694.42285 + }, + "TerritoryId": 959, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -548.9189, + "Y": -158.88948, + "Z": -651.8319 + }, + "TerritoryId": 959, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + } + }, + { + "DataId": 2012514, + "Position": { + "X": -549.12646, + "Y": -158.86176, + "Z": -649.2866 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "Position": { + "X": -549.3165, + "Y": -158.89796, + "Z": -468.4637 + }, + "TerritoryId": 959, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + } + }, + { + "DataId": 2012515, + "Position": { + "X": -549.157, + "Y": -158.89221, + "Z": -465.87323 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1041818, + "Position": { + "X": -295.76562, + "Y": -144, + "Z": -547.0817 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041819, + "Position": { + "X": -295.64362, + "Y": -144, + "Z": -546.2882 + }, + "TerritoryId": 959, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4180_A Waiting Love.json b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4180_A Waiting Love.json new file mode 100644 index 00000000..89c51bba --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4180_A Waiting Love.json @@ -0,0 +1,76 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039336, + "Position": { + "X": -175.61609, + "Y": 7.84433, + "Z": 68.92493 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039328, + "Position": { + "X": -152.3919, + "Y": -16.147, + "Z": 209.46057 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Old Sharlayan] The Baldesion Annex", + "[Old Sharlayan] Scholar's Harbor" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1039328, + "Position": { + "X": -152.3919, + "Y": -16.147, + "Z": 209.46057 + }, + "TerritoryId": 962, + "InteractionType": "Emote", + "Emote": "poke" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039336, + "Position": { + "X": -175.61609, + "Y": 7.84433, + "Z": 68.92493 + }, + "TerritoryId": 962, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Old Sharlayan", + "AethernetShortcut": [ + "[Old Sharlayan] Aetheryte Plaza", + "[Old Sharlayan] The Baldesion Annex" + ] + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4181_Scholarly Perspective.json b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4181_Scholarly Perspective.json new file mode 100644 index 00000000..ae183516 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4181_Scholarly Perspective.json @@ -0,0 +1,77 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037211, + "Position": { + "X": 36.209595, + "Y": 2.455876, + "Z": -22.90387 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039337, + "Position": { + "X": 99.6261, + "Y": -10.587427, + "Z": 276.81384 + }, + "TerritoryId": 962, + "InteractionType": "Snipe", + "Comment": "Click ewer, head and feet", + "AethernetShortcut": [ + "[Old Sharlayan] Aetheryte Plaza", + "[Old Sharlayan] Scholar's Harbor" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1039349, + "Position": { + "X": -49.485046, + "Y": -14.999998, + "Z": 253.34546 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "AetheryteShortcut": "Old Sharlayan", + "AethernetShortcut": [ + "[Old Sharlayan] Aetheryte Plaza", + "[Old Sharlayan] Scholar's Harbor" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037211, + "Position": { + "X": 36.209595, + "Y": 2.455876, + "Z": -22.90387 + }, + "TerritoryId": 962, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Old Sharlayan" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4182_A Literary Delivery.json b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4182_A Literary Delivery.json new file mode 100644 index 00000000..475d4264 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4182_A Literary Delivery.json @@ -0,0 +1,108 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039509, + "Position": { + "X": 42.06909, + "Y": 2.4514537, + "Z": -11.062805 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039340, + "Position": { + "X": 71.39697, + "Y": -14.446998, + "Z": 82.108765 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Old Sharlayan] Aetheryte Plaza", + "[Old Sharlayan] Scholar's Harbor" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1039338, + "Position": { + "X": 205.67627, + "Y": 1.5468291, + "Z": 22.690125 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Old Sharlayan] Scholar's Harbor", + "[Old Sharlayan] Journey's End" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1039339, + "Position": { + "X": -237.93402, + "Y": 12.289626, + "Z": 16.189758 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Old Sharlayan] Journey's End", + "[Old Sharlayan] The Studium" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039509, + "Position": { + "X": 42.06909, + "Y": 2.4514537, + "Z": -11.062805 + }, + "TerritoryId": 962, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Old Sharlayan" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4183_Doll Dash.json b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4183_Doll Dash.json new file mode 100644 index 00000000..c9548b75 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4183_Doll Dash.json @@ -0,0 +1,66 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039341, + "Position": { + "X": 164.72107, + "Y": 1.2891341, + "Z": 22.140747 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZA004_04183_Q1_000_000", + "Answer": "TEXT_AKTKZA004_04183_A1_000_002" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039342, + "Position": { + "X": 111.65027, + "Y": 18.835812, + "Z": -175.0058 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Old Sharlayan] Journey's End", + "[Old Sharlayan] The Leveilleur Estate" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039341, + "Position": { + "X": 164.72107, + "Y": 1.2891341, + "Z": 22.140747 + }, + "TerritoryId": 962, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Old Sharlayan] The Leveilleur Estate", + "[Old Sharlayan] Journey's End" + ] + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4210_A Volatile Education.json b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4210_A Volatile Education.json new file mode 100644 index 00000000..b42a58b0 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4210_A Volatile Education.json @@ -0,0 +1,113 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039510, + "Position": { + "X": -309.07147, + "Y": 21.799957, + "Z": -174.36487 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -201.63965, + "Y": 25.46388, + "Z": -157.38919 + }, + "TerritoryId": 962, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": -191.05865, + "Y": 22.001097, + "Z": -166.16983 + }, + "TerritoryId": 962, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, + { + "DataId": 1039346, + "Position": { + "X": -188.922, + "Y": 23.49104, + "Z": -181.90283 + }, + "TerritoryId": 962, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2011801, + "Position": { + "X": -191.02777, + "Y": 24.215942, + "Z": -179.15619 + }, + "TerritoryId": 962, + "InteractionType": "UseItem", + "ItemId": 2003114 + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1039346, + "Position": { + "X": -188.922, + "Y": 23.49104, + "Z": -181.90283 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZC001_04210_Q1_000_000", + "Answer": "TEXT_AKTKZC001_04210_A1_000_002" + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039510, + "Position": { + "X": -309.07147, + "Y": 21.799957, + "Z": -174.36487 + }, + "TerritoryId": 962, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Old Sharlayan", + "AethernetShortcut": [ + "[Old Sharlayan] Aetheryte Plaza", + "[Old Sharlayan] The Studium" + ] + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4211_The Light of Progress.json b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4211_The Light of Progress.json new file mode 100644 index 00000000..80534b45 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4211_The Light of Progress.json @@ -0,0 +1,66 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 2011795, + "Position": { + "X": -104.32593, + "Y": 24.673828, + "Z": -120.042725 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039344, + "Position": { + "X": -58.54895, + "Y": 5.9669995, + "Z": -60.746216 + }, + "TerritoryId": 962, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1039509, + "Position": { + "X": 42.06909, + "Y": 2.4514537, + "Z": -11.062805 + }, + "TerritoryId": 962, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039345, + "Position": { + "X": -102.1897, + "Y": 24.649986, + "Z": -119.798584 + }, + "TerritoryId": 962, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4212_My Fair Mammet.json b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4212_My Fair Mammet.json new file mode 100644 index 00000000..eec5c43f --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4212_My Fair Mammet.json @@ -0,0 +1,59 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037104, + "Position": { + "X": -326.07007, + "Y": 20.1375, + "Z": -142.56512 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039343, + "Position": { + "X": -16.983276, + "Y": -16.246998, + "Z": 123.03345 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Old Sharlayan] The Studium", + "[Old Sharlayan] Scholar's Harbor" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037104, + "Position": { + "X": -326.07007, + "Y": 20.1375, + "Z": -142.56512 + }, + "TerritoryId": 962, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Old Sharlayan] Scholar's Harbor", + "[Old Sharlayan] The Studium" + ] + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4213_The Creature from the Wooden Crate.json b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4213_The Creature from the Wooden Crate.json new file mode 100644 index 00000000..cf4a5427 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4213_The Creature from the Wooden Crate.json @@ -0,0 +1,66 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041286, + "Position": { + "X": -230.51807, + "Y": 21.437386, + "Z": -119.46289 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZC004_04213_Q1_000_000", + "Answer": "TEXT_AKTKZC004_04213_A1_000_001" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041285, + "Position": { + "X": 115.80066, + "Y": 14.741594, + "Z": -132.03638 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Old Sharlayan] The Studium", + "[Old Sharlayan] The Leveilleur Estate" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041286, + "Position": { + "X": -230.51807, + "Y": 21.437386, + "Z": -119.46289 + }, + "TerritoryId": 962, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Old Sharlayan] The Leveilleur Estate", + "[Old Sharlayan] The Studium" + ] + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4214_Fast Fashion.json b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4214_Fast Fashion.json new file mode 100644 index 00000000..0b4c7e74 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4214_Fast Fashion.json @@ -0,0 +1,132 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041287, + "Position": { + "X": -307.3625, + "Y": 22.3, + "Z": -143.29755 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_AKTKZC005_04214_Q1_000_000", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041288, + "Position": { + "X": -169.51251, + "Y": 21.975235, + "Z": -152.26978 + }, + "TerritoryId": 962, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2012434, + "Position": { + "X": -168.32227, + "Y": 21.927185, + "Z": -151.29321 + }, + "StopDistance": 0.25, + "TerritoryId": 962, + "InteractionType": "Emote", + "Emote": "battlestance" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2012437, + "Position": { + "X": -169.69562, + "Y": 22.87323, + "Z": -150.07251 + }, + "TerritoryId": 962, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1037098, + "Position": { + "X": -94.83484, + "Y": 6.617, + "Z": -41.58087 + }, + "TerritoryId": 962, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1041288, + "Position": { + "X": -169.51251, + "Y": 21.975235, + "Z": -152.26978 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZC005_04214_Q2_000_000", + "Answer": "TEXT_AKTKZC005_04214_A2_000_002" + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041287, + "Position": { + "X": -307.3625, + "Y": 22.3, + "Z": -143.29755 + }, + "TerritoryId": 962, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Old Sharlayan", + "AethernetShortcut": [ + "[Old Sharlayan] Aetheryte Plaza", + "[Old Sharlayan] The Studium" + ] + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4215_Booking Books.json b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4215_Booking Books.json new file mode 100644 index 00000000..93207817 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4215_Booking Books.json @@ -0,0 +1,188 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037139, + "Position": { + "X": -317.06726, + "Y": 19, + "Z": 48.844116 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -265.8844, + "Y": 18.745457, + "Z": 44.893326 + }, + "TerritoryId": 962, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + } + }, + { + "Position": { + "X": -258.26123, + "Y": 12.376022, + "Z": 53.92458 + }, + "TerritoryId": 962, + "InteractionType": "WalkTo", + "DisableNavmesh": true, + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + } + }, + { + "DataId": 1041289, + "Position": { + "X": -265.919, + "Y": 12.623348, + "Z": 102.86096 + }, + "TerritoryId": 962, + "InteractionType": "UseItem", + "ItemId": 2003288, + "GroundTarget": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1041290, + "Position": { + "X": -291.49316, + "Y": 12.68306, + "Z": 127.45862 + }, + "TerritoryId": 962, + "InteractionType": "UseItem", + "ItemId": 2003288, + "GroundTarget": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1041291, + "Position": { + "X": -155.77942, + "Y": 11.71745, + "Z": -52.628357 + }, + "TerritoryId": 962, + "InteractionType": "UseItem", + "ItemId": 2003288, + "GroundTarget": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1041292, + "Position": { + "X": -147.50903, + "Y": 12.490502, + "Z": -87.052734 + }, + "TerritoryId": 962, + "InteractionType": "UseItem", + "ItemId": 2003288, + "GroundTarget": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + }, + { + "DataId": 1041293, + "Position": { + "X": -107.86603, + "Y": 18.024683, + "Z": -71.33594 + }, + "TerritoryId": 962, + "InteractionType": "UseItem", + "ItemId": 2003288, + "GroundTarget": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 8 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037139, + "Position": { + "X": -317.06726, + "Y": 19, + "Z": 48.844116 + }, + "TerritoryId": 962, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Old Sharlayan] The Baldesion Annex", + "[Old Sharlayan] The Studium" + ] + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4316_For the Love of Pudding.json b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4316_For the Love of Pudding.json new file mode 100644 index 00000000..39bdc094 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4316_For the Love of Pudding.json @@ -0,0 +1,122 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041301, + "Position": { + "X": -50.94995, + "Y": -14.169327, + "Z": 108.75098 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041295, + "Position": { + "X": -22.568176, + "Y": -16.246908, + "Z": 91.75244 + }, + "TerritoryId": 962, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1037066, + "Position": { + "X": 65.01868, + "Y": -14.446999, + "Z": 78.26355 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1040985, + "Position": { + "X": 56.77881, + "Y": 5.1499996, + "Z": -73.86902 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Old Sharlayan] Scholar's Harbor", + "[Old Sharlayan] Aetheryte Plaza" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2012610, + "Position": { + "X": -363.6988, + "Y": 20.279175, + "Z": 92.729004 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Old Sharlayan] Aetheryte Plaza", + "[Old Sharlayan] The Studium" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041301, + "Position": { + "X": -50.94995, + "Y": -14.169327, + "Z": 108.75098 + }, + "TerritoryId": 962, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Old Sharlayan] The Studium", + "[Old Sharlayan] Scholar's Harbor" + ] + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4317_Secret in the Box.json b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4317_Secret in the Box.json new file mode 100644 index 00000000..b5dd688a --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4317_Secret in the Box.json @@ -0,0 +1,132 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041296, + "Position": { + "X": -32.913757, + "Y": 2.400051, + "Z": -8.804504 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2012438, + "Position": { + "X": -33.310486, + "Y": 2.8533936, + "Z": -9.048645 + }, + "StopDistance": 4, + "TerritoryId": 962, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1041297, + "Position": { + "X": -167.55939, + "Y": 6.6576204, + "Z": 129.07605 + }, + "TerritoryId": 962, + "InteractionType": "Emote", + "Emote": "doze", + "AethernetShortcut": [ + "[Old Sharlayan] Aetheryte Plaza", + "[Old Sharlayan] The Baldesion Annex" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1041299, + "Position": { + "X": -126.17688, + "Y": 29.890081, + "Z": -201.80054 + }, + "TerritoryId": 962, + "InteractionType": "Say", + "ChatMessage": { + "Key": "TEXT_AKTKZI002_04317_SAYTODO_000_060" + }, + "AethernetShortcut": [ + "[Old Sharlayan] The Baldesion Annex", + "[Old Sharlayan] The Rostra" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1037234, + "Position": { + "X": 16.922241, + "Y": 23.499975, + "Z": -136.67511 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ], + "SkipConditions": { + "StepIf": { + "Never": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 2012439, + "Position": { + "X": -32.822205, + "Y": 2.8533936, + "Z": -9.842102 + }, + "TerritoryId": 962, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Old Sharlayan] The Rostra", + "[Old Sharlayan] Aetheryte Plaza" + ] + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4319_Sandwiches and Pretzels.json b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4319_Sandwiches and Pretzels.json new file mode 100644 index 00000000..5d4c1cac --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4319_Sandwiches and Pretzels.json @@ -0,0 +1,77 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": -38.106888, + "Y": -14.1693125, + "Z": 107.58956 + }, + "TerritoryId": 962, + "InteractionType": "WalkTo" + }, + { + "DataId": 1037077, + "Position": { + "X": -38.07129, + "Y": -14.169313, + "Z": 105.30249 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041308, + "Position": { + "X": 190.6615, + "Y": 18.89543, + "Z": -91.44739 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Old Sharlayan] Scholar's Harbor", + "[Old Sharlayan] The Leveilleur Estate" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": -38.106888, + "Y": -14.1693125, + "Z": 107.58956 + }, + "TerritoryId": 962, + "InteractionType": "WalkTo", + "AethernetShortcut": [ + "[Old Sharlayan] The Leveilleur Estate", + "[Old Sharlayan] Scholar's Harbor" + ] + }, + { + "DataId": 1037077, + "Position": { + "X": -38.07129, + "Y": -14.169313, + "Z": 105.30249 + }, + "TerritoryId": 962, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4816_The Pride of Labyrinthos.json b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4816_The Pride of Labyrinthos.json new file mode 100644 index 00000000..eb256233 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Old Sharlayan/4816_The Pride of Labyrinthos.json @@ -0,0 +1,120 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1046073, + "Position": { + "X": -53.635498, + "Y": -29.497286, + "Z": -65.14081 + }, + "TerritoryId": 956, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Labyrinthos - Sharlayan Hamlet", + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": -53.635498, + "Y": -29.497286, + "Z": -65.14081 + }, + "MaximumDistance": 30, + "TerritoryId": 956 + } + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1046404, + "Position": { + "X": -707.6982, + "Y": -31.53043, + "Z": 280.38452 + }, + "TerritoryId": 956, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Labyrinthos - Aporia" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1046073, + "Position": { + "X": -53.635498, + "Y": -29.497286, + "Z": -65.14081 + }, + "TerritoryId": 956, + "InteractionType": "Interact", + "StopDistance": 5, + "AetheryteShortcut": "Labyrinthos - Sharlayan Hamlet", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_SUBCTS606_04816_Q2_000_055", + "Yes": true + } + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": -53.635498, + "Y": -29.497286, + "Z": -65.14081 + }, + "MaximumDistance": 30, + "TerritoryId": 956 + } + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1046073, + "Position": { + "X": -53.635498, + "Y": -29.497286, + "Z": -65.14081 + }, + "TerritoryId": 956, + "InteractionType": "CompleteQuest", + "StopDistance": 5, + "AetheryteShortcut": "Labyrinthos - Sharlayan Hamlet", + "SkipConditions": { + "AetheryteShortcutIf": { + "NearPosition": { + "Position": { + "X": -53.635498, + "Y": -29.497286, + "Z": -65.14081 + }, + "MaximumDistance": 30, + "TerritoryId": 956 + } + } + } + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4269_A Bond Eternal.json b/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4269_A Bond Eternal.json new file mode 100644 index 00000000..af5bcd2f --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4269_A Bond Eternal.json @@ -0,0 +1,79 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "Position": { + "X": -21.53136, + "Y": 1.7999926, + "Z": -182.28082 + }, + "TerritoryId": 963, + "InteractionType": "WalkTo" + }, + { + "DataId": 1037381, + "Position": { + "X": -23.697266, + "Y": 1.7999947, + "Z": -180.07172 + }, + "StopDistance": 4, + "TerritoryId": 963, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041282, + "Position": { + "X": 67.826294, + "Y": -24.693443, + "Z": -238.08661 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Radz-at-Han] Mehryde's Meyhane", + "[Radz-at-Han] The High Crucible of Al-Kimiya" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": -21.53136, + "Y": 1.7999926, + "Z": -182.28082 + }, + "TerritoryId": 963, + "InteractionType": "WalkTo", + "AethernetShortcut": [ + "[Radz-at-Han] The High Crucible of Al-Kimiya", + "[Radz-at-Han] Mehryde's Meyhane" + ] + }, + { + "DataId": 1037381, + "Position": { + "X": -23.697266, + "Y": 1.7999947, + "Z": -180.07172 + }, + "StopDistance": 4, + "TerritoryId": 963, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4270_A Gift of Flowers.json b/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4270_A Gift of Flowers.json new file mode 100644 index 00000000..e2e3f108 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4270_A Gift of Flowers.json @@ -0,0 +1,145 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037469, + "Position": { + "X": -148.8518, + "Y": 36, + "Z": 38.895264 + }, + "TerritoryId": 963, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041152, + "Position": { + "X": -100.02289, + "Y": 13.999934, + "Z": 157.97656 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Radz-at-Han] Ruveydah Fibers", + "[Radz-at-Han] Alzadaal's Peace" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2012395, + "Position": { + "X": -108.20172, + "Y": 14.877502, + "Z": 156.20654 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZF015_04270_Q1_000_000", + "Answer": "TEXT_AKTKZF015_04270_A1_000_002" + } + ], + "CompletionQuestVariablesFlags": [ + null, + 64, + null, + null, + null, + null + ] + }, + { + "DataId": 2012396, + "Position": { + "X": -106.126526, + "Y": 15.0911255, + "Z": 154.49756 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZF015_04270_Q1_000_000", + "Answer": "TEXT_AKTKZF015_04270_A1_000_001" + } + ], + "CompletionQuestVariablesFlags": [ + null, + 32, + null, + null, + null, + null + ] + }, + { + "DataId": 1041152, + "Position": { + "X": -100.02289, + "Y": 13.999934, + "Z": 157.97656 + }, + "StopDistance": 7, + "TerritoryId": 963, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": -38.102844, + "Y": 7.704563, + "Z": 106.27705 + }, + "TerritoryId": 963, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": 6.6071167, + "Y": -2.02948, + "Z": 110.55151 + }, + "StopDistance": 2, + "TerritoryId": 963, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, + { + "DataId": 1037469, + "Position": { + "X": -148.8518, + "Y": 36, + "Z": 38.895264 + }, + "TerritoryId": 963, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Radz-at-Han] Alzadaal's Peace", + "[Radz-at-Han] Ruveydah Fibers" + ] + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4271_Tidings from Afar.json b/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4271_Tidings from Afar.json new file mode 100644 index 00000000..38f789d2 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4271_Tidings from Afar.json @@ -0,0 +1,90 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041155, + "Position": { + "X": -57.51129, + "Y": -2.000002, + "Z": 129.77795 + }, + "TerritoryId": 963, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041154, + "Position": { + "X": 112.01648, + "Y": 26.99999, + "Z": 53.81848 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Radz-at-Han] Alzadaal's Peace", + "[Radz-at-Han] Kama" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1037354, + "Position": { + "X": 109.33081, + "Y": 1.8631814, + "Z": -100.1145 + }, + "StopDistance": 7, + "TerritoryId": 963, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Radz-at-Han] Kama", + "[Radz-at-Han] Aetheryte Plaza" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041155, + "Position": { + "X": -57.51129, + "Y": -2.000002, + "Z": 129.77795 + }, + "TerritoryId": 963, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Radz-at-Han] Aetheryte Plaza", + "[Radz-at-Han] Alzadaal's Peace" + ] + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4272_The Pangs of Hunger.json b/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4272_The Pangs of Hunger.json new file mode 100644 index 00000000..5be52421 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4272_The Pangs of Hunger.json @@ -0,0 +1,146 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041144, + "Position": { + "X": -63.34027, + "Y": 14, + "Z": 125.62744 + }, + "TerritoryId": 963, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -48.856667, + "Y": 13.068996, + "Z": 118.292465 + }, + "TerritoryId": 963, + "InteractionType": "WalkTo" + }, + { + "DataId": 194, + "Position": { + "X": 6.6071167, + "Y": -2.02948, + "Z": 110.55151 + }, + "StopDistance": 3, + "TerritoryId": 963, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, + { + "Position": { + "X": -21.53136, + "Y": 1.7999926, + "Z": -182.28082 + }, + "TerritoryId": 963, + "InteractionType": "WalkTo", + "AethernetShortcut": [ + "[Radz-at-Han] Alzadaal's Peace", + "[Radz-at-Han] Mehryde's Meyhane" + ] + }, + { + "DataId": 1037381, + "Position": { + "X": -23.697266, + "Y": 1.7999947, + "Z": -180.07172 + }, + "StopDistance": 4, + "TerritoryId": 963, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2012387, + "Position": { + "X": -58.27423, + "Y": 0.9613037, + "Z": -199.42017 + }, + "TerritoryId": 963, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2012388, + "Position": { + "X": -65.62909, + "Y": 13.992493, + "Z": 129.1676 + }, + "TerritoryId": 963, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1041144, + "Position": { + "X": -63.34027, + "Y": 14, + "Z": 125.62744 + }, + "TerritoryId": 963, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1037466, + "Position": { + "X": -205.31018, + "Y": 36, + "Z": 135.39331 + }, + "TerritoryId": 963, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041145, + "Position": { + "X": -63.34027, + "Y": 14, + "Z": 126.207275 + }, + "TerritoryId": 963, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4273_Silks for a Babe.json b/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4273_Silks for a Babe.json new file mode 100644 index 00000000..9e7a1901 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4273_Silks for a Babe.json @@ -0,0 +1,73 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1041146, + "Position": { + "X": -155.80994, + "Y": 28, + "Z": 178.97302 + }, + "TerritoryId": 963, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041147, + "Position": { + "X": -90.25714, + "Y": 24.010002, + "Z": 70.54236 + }, + "TerritoryId": 963, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2012390, + "Position": { + "X": -88.39557, + "Y": 25.223145, + "Z": 66.453 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZF018_04273_Q1_000_000", + "Answer": "TEXT_AKTKZF018_04273_A1_000_001" + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1041146, + "Position": { + "X": -155.80994, + "Y": 28, + "Z": 178.97302 + }, + "TerritoryId": 963, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4274_Hungry Hungry Hamsa.json b/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4274_Hungry Hungry Hamsa.json new file mode 100644 index 00000000..098256e3 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4274_Hungry Hungry Hamsa.json @@ -0,0 +1,202 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1040957, + "Position": { + "X": -191.48547, + "Y": 35.999928, + "Z": 158.31238 + }, + "TerritoryId": 963, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2012393, + "Position": { + "X": -238.88, + "Y": 35.965454, + "Z": 122.78931 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZF019_04274_Q3_000_000", + "Answer": "TEXT_AKTKZF019_04274_A3_000_001" + } + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + 16, + null, + null + ] + }, + { + "DataId": 2012393, + "Position": { + "X": -238.88, + "Y": 35.965454, + "Z": 122.78931 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZF019_04274_Q3_000_000", + "Answer": "TEXT_AKTKZF019_04274_A3_000_002" + } + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + 128, + null, + null + ] + }, + { + "DataId": 2012392, + "Position": { + "X": -237.10992, + "Y": 35.965454, + "Z": 122.75879 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZF019_04274_Q2_000_000", + "Answer": "TEXT_AKTKZF019_04274_A2_000_002" + } + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + 32, + null, + null + ] + }, + { + "DataId": 2012391, + "Position": { + "X": -235.52307, + "Y": 35.965454, + "Z": 122.23999 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZF019_04274_Q1_000_000", + "Answer": "TEXT_AKTKZF019_04274_A1_000_001" + } + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + 8, + null, + null + ] + }, + { + "DataId": 2012391, + "Position": { + "X": -235.52307, + "Y": 35.965454, + "Z": 122.23999 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKZF019_04274_Q1_000_000", + "Answer": "TEXT_AKTKZF019_04274_A1_000_002" + } + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + 64, + null, + null + ] + }, + { + "DataId": 1041149, + "Position": { + "X": -226.64227, + "Y": 36, + "Z": 108.56787 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1041148, + "Position": { + "X": -223.59052, + "Y": 36, + "Z": 143.328 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1040957, + "Position": { + "X": -191.48547, + "Y": 35.999928, + "Z": 158.31238 + }, + "TerritoryId": 963, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4275_Operation Ring Retrieval.json b/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4275_Operation Ring Retrieval.json new file mode 100644 index 00000000..5c6578bb --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Radz-at-Han/4275_Operation Ring Retrieval.json @@ -0,0 +1,159 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1040884, + "Position": { + "X": -176.13495, + "Y": 36, + "Z": 28.244385 + }, + "TerritoryId": 963, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1041514, + "Position": { + "X": -133.59277, + "Y": 30.999994, + "Z": 0.07623291 + }, + "TerritoryId": 963, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -104.8164, + "Y": 30.999998, + "Z": 11.496266 + }, + "TerritoryId": 963, + "InteractionType": "WalkTo", + "DelaySecondsAtStart": 2, + "Sprint": false + }, + { + "DataId": 1041515, + "Position": { + "X": -63.309746, + "Y": 31.051857, + "Z": 20.292212 + }, + "StopDistance": 100, + "TerritoryId": 963, + "InteractionType": "WaitForNpcAtPosition", + "Sprint": false + }, + { + "Position": { + "X": -68.410736, + "Y": 30.999716, + "Z": 20.657598 + }, + "TerritoryId": 963, + "InteractionType": "WalkTo", + "Sprint": false + }, + { + "DataId": 1041515, + "Position": { + "X": -16.034935, + "Y": 27.05736, + "Z": 31.972898 + }, + "StopDistance": 100, + "TerritoryId": 963, + "InteractionType": "WaitForNpcAtPosition", + "Sprint": false + }, + { + "Position": { + "X": -27.071863, + "Y": 27.000011, + "Z": 27.903757 + }, + "TerritoryId": 963, + "InteractionType": "WalkTo", + "Sprint": false + }, + { + "DataId": 1041515, + "Position": { + "X": 20.139565, + "Y": 26.999846, + "Z": 34.94524 + }, + "StopDistance": 100, + "TerritoryId": 963, + "InteractionType": "WaitForNpcAtPosition", + "Sprint": false + }, + { + "Position": { + "X": 33.18388, + "Y": 26.999989, + "Z": 41.661907 + }, + "TerritoryId": 963, + "InteractionType": "WalkTo", + "DelaySecondsAtStart": 2, + "Sprint": false + }, + { + "DataId": 1041515, + "Position": { + "X": 56.11211, + "Y": 26.999992, + "Z": 47.213455 + }, + "StopDistance": 100, + "TerritoryId": 963, + "InteractionType": "WaitForNpcAtPosition", + "Sprint": false + }, + { + "DataId": 1041514, + "Position": { + "X": 70.07179, + "Y": 26.99999, + "Z": 61.356277 + }, + "StopDistance": 2, + "TerritoryId": 963, + "InteractionType": "WalkTo", + "DelaySecondsAtStart": 8, + "Sprint": false + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1040885, + "Position": { + "X": -173.05261, + "Y": 36, + "Z": 25.589355 + }, + "TerritoryId": 963, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4542_The Sleeping Gentleman.json b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4542_The Sleeping Gentleman.json new file mode 100644 index 00000000..2116b0b5 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4542_The Sleeping Gentleman.json @@ -0,0 +1,289 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1042487, + "Position": { + "X": 32.272827, + "Y": -4.4237822E-07, + "Z": -0.7477417 + }, + "TerritoryId": 963, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Radz-at-Han", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CHRHDB811_04542_Q4_000_000", + "Answer": "TEXT_CHRHDB811_04542_A4_000_001" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1042488, + "Position": { + "X": 150.68274, + "Y": 4.783756, + "Z": -145.00653 + }, + "TerritoryId": 963, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1042489, + "Position": { + "X": 147.75305, + "Y": 27.06, + "Z": 36.057007 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Radz-at-Han] Aetheryte Plaza", + "[Radz-at-Han] Kama" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1027322, + "Position": { + "X": -20.126648, + "Y": 3.9998171, + "Z": 204.24194 + }, + "StopDistance": 5, + "TerritoryId": 819, + "InteractionType": "Interact", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Pendants" + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "TerritoryId": 819, + "AethernetShortcut": [ + "[Crystarium] The Pendants", + "[Crystarium] Tessellation (Lakeland)" + ], + "InteractionType": "None" + }, + { + "Position": { + "X": 55.589294, + "Y": 2.0276523, + "Z": 669.1557 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + }, + "Comment": "these bridges have navmesh problems" + }, + { + "Position": { + "X": 15.410904, + "Y": 2.2598603, + "Z": 677.3755 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "DisableNavmesh": true, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "Position": { + "X": -82.79376, + "Y": 11.970126, + "Z": 765.8721 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "DataId": 1042493, + "Position": { + "X": -106.73688, + "Y": 14.173656, + "Z": 756.4354 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1042491, + "Position": { + "X": -137.22437, + "Y": 9.572956, + "Z": 708.3999 + }, + "StopDistance": 1, + "TerritoryId": 813, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1042492, + "Position": { + "X": -218.76862, + "Y": 1.9084097, + "Z": 756.16077 + }, + "TerritoryId": 813, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "Position": { + "X": -82.79376, + "Y": 11.970126, + "Z": 765.8721 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "DataId": 1042494, + "Position": { + "X": -54.032227, + "Y": 2.015483, + "Z": 677.9125 + }, + "TerritoryId": 813, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "Position": { + "X": 15.410904, + "Y": 2.2598603, + "Z": 677.3755 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "Position": { + "X": 55.589294, + "Y": 2.0276523, + "Z": 669.1557 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "DisableNavmesh": true, + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + }, + "Comment": "these bridges have navmesh problems" + }, + { + "Position": { + "X": 105.453514, + "Y": -1.5952542, + "Z": 604.3535 + }, + "TerritoryId": 813, + "InteractionType": "WalkTo", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } + }, + { + "DataId": 1042497, + "Position": { + "X": 220.7522, + "Y": 12.699311, + "Z": 229.84656 + }, + "TerritoryId": 813, + "InteractionType": "CompleteQuest", + "Fly": true, + "NextQuestId": 4543 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4543_A Soulful Reunion.json b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4543_A Soulful Reunion.json new file mode 100644 index 00000000..c950da6e --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4543_A Soulful Reunion.json @@ -0,0 +1,237 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1042499, + "Position": { + "X": 217.51733, + "Y": 12.445339, + "Z": 228.44275 + }, + "StopDistance": 5, + "TerritoryId": 813, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CHRHDB812_04543_Q1_000_000", + "Answer": "TEXT_CHRHDB812_04543_A1_000_002" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1042502, + "Position": { + "X": -57.38922, + "Y": -36.72638, + "Z": -254.53583 + }, + "TerritoryId": 819, + "InteractionType": "Interact", + "AetheryteShortcut": "Crystarium", + "AethernetShortcut": [ + "[Crystarium] Aetheryte Plaza", + "[Crystarium] The Cabinet of Curiosity" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1042505, + "Position": { + "X": 148.11926, + "Y": 27.06, + "Z": 36.240112 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "AetheryteShortcut": "Radz-at-Han", + "AethernetShortcut": [ + "[Radz-at-Han] Aetheryte Plaza", + "[Radz-at-Han] Kama" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1037341, + "Position": { + "X": 133.77576, + "Y": 26.99999, + "Z": 12.405518 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1037352, + "Position": { + "X": 112.10791, + "Y": 26.99999, + "Z": 25.253662 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1042506, + "Position": { + "X": 126.11572, + "Y": 26.999989, + "Z": 32.76111 + }, + "TerritoryId": 963, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1042508, + "Position": { + "X": 126.11572, + "Y": 26.999989, + "Z": 32.76111 + }, + "TerritoryId": 963, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1037324, + "Position": { + "X": -4.257263, + "Y": 27, + "Z": 36.362183 + }, + "TerritoryId": 963, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "Position": { + "X": -3.0175605, + "Y": 27, + "Z": 36.584843 + }, + "StopDistance": 0.5, + "TerritoryId": 963, + "InteractionType": "Jump", + "JumpDestination": { + "Position": { + "X": -3.6922705, + "Y": -1.9999962, + "Z": 52.106045 + } + } + }, + { + "DataId": 1042509, + "Position": { + "X": -29.373718, + "Y": -1.9999962, + "Z": 130.93762 + }, + "TerritoryId": 963, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1042510, + "Position": { + "X": -337.57538, + "Y": 3.2215352, + "Z": 365.7129 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "AetheryteShortcut": "Thavnair - Great Work", + "Fly": true + } + ] + }, + { + "Sequence": 9, + "Steps": [ + { + "DataId": 1042511, + "Position": { + "X": -376.669, + "Y": 1.1651754, + "Z": 379.23242 + }, + "StopDistance": 5, + "TerritoryId": 957, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1042512, + "Position": { + "X": 31.387817, + "Y": -5.021957E-07, + "Z": -0.65618896 + }, + "TerritoryId": 963, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Radz-at-Han", + "NextQuestId": 4641 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4641_Lunar Conspiracy.json b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4641_Lunar Conspiracy.json new file mode 100644 index 00000000..deeaa99a --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4641_Lunar Conspiracy.json @@ -0,0 +1,211 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1042512, + "Position": { + "X": 31.387817, + "Y": -5.021957E-07, + "Z": -0.65618896 + }, + "TerritoryId": 963, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CHRHDB821_04641_Q2_000_000", + "Answer": "TEXT_CHRHDB821_04641_A2_000_002" + }, + { + "Type": "List", + "Prompt": "TEXT_CHRHDB821_04641_Q3_000_000", + "Answer": "TEXT_CHRHDB821_04641_A3_000_001" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1042524, + "Position": { + "X": -432.70013, + "Y": 22.328213, + "Z": 508.75085 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "AetheryteShortcut": "Garlemald - Camp Broken Glass" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2012531, + "Position": { + "X": -663.29443, + "Y": 132.6466, + "Z": 728.96924 + }, + "StopDistance": 0.5, + "TerritoryId": 959, + "InteractionType": "Interact", + "TargetTerritoryId": 1024, + "AetheryteShortcut": "Mare Lamentorum - Sinus Lacrimarum", + "Fly": true + }, + { + "DataId": 2012529, + "Position": { + "X": 0.07623291, + "Y": 0.83917236, + "Z": 52.506226 + }, + "TerritoryId": 1024, + "InteractionType": "Interact", + "TargetTerritoryId": 958 + }, + { + "DataId": 1042525, + "Position": { + "X": -446.0365, + "Y": 10.5, + "Z": -616.14404 + }, + "TerritoryId": 958, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1042526, + "Position": { + "X": -657.9232, + "Y": 130.61172, + "Z": 722.62134 + }, + "StopDistance": 7, + "TerritoryId": 959, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1042528, + "Position": { + "X": -15.213318, + "Y": -129.20917, + "Z": -475.6695 + }, + "TerritoryId": 959, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1042531, + "Position": { + "X": -103.07471, + "Y": -137.41672, + "Z": -444.66315 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "Position": { + "X": -59.250706, + "Y": -133.00002, + "Z": -587.20355 + }, + "TerritoryId": 959, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1042532, + "Position": { + "X": -60.624146, + "Y": -132.80109, + "Z": -587.4266 + }, + "TerritoryId": 959, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1037816, + "Position": { + "X": 114.3053, + "Y": -132.87448, + "Z": -559.35 + }, + "TerritoryId": 959, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 2013061, + "Position": { + "X": 249.19507, + "Y": 66.544556, + "Z": 367.2693 + }, + "StopDistance": 0.5, + "TerritoryId": 959, + "InteractionType": "Interact", + "AetheryteShortcut": "Mare Lamentorum - Sinus Lacrimarum", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1042544, + "Position": { + "X": 324.422, + "Y": 130.1783, + "Z": 711.94006 + }, + "StopDistance": 7, + "TerritoryId": 959, + "InteractionType": "CompleteQuest", + "NextQuestId": 4642 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4642_The Imperfect Gentleman.json b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4642_The Imperfect Gentleman.json new file mode 100644 index 00000000..39e83634 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4642_The Imperfect Gentleman.json @@ -0,0 +1,104 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1042544, + "Position": { + "X": 324.422, + "Y": 130.1783, + "Z": 711.94006 + }, + "StopDistance": 6, + "TerritoryId": 959, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1042548, + "Position": { + "X": 1.5106201, + "Y": 70.01534, + "Z": -1.083435 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2013062, + "Position": { + "X": -129.83911, + "Y": 61.661743, + "Z": 120.80554 + }, + "StopDistance": 0.5, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2013063, + "Position": { + "X": -249.22565, + "Y": 81.712036, + "Z": 134.1726 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2013064, + "Position": { + "X": -358.23608, + "Y": 104.53955, + "Z": 117.234985 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1042555, + "Position": { + "X": 31.204712, + "Y": -5.351952E-07, + "Z": -0.77819824 + }, + "StopDistance": 5, + "TerritoryId": 963, + "InteractionType": "CompleteQuest", + "NextQuestId": 4718 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4718_The Spectacle of Inspection.json b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4718_The Spectacle of Inspection.json new file mode 100644 index 00000000..a99ea5c0 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4718_The Spectacle of Inspection.json @@ -0,0 +1,197 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1042558, + "Position": { + "X": 33.066284, + "Y": -5.8859587E-07, + "Z": -2.2125854 + }, + "StopDistance": 5, + "TerritoryId": 963, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CHRHDB831_04718_Q6_000_000", + "Answer": "TEXT_CHRHDB831_04718_A6_000_001" + } + ] + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1042560, + "Position": { + "X": 431.96765, + "Y": 3.1168795, + "Z": -250.5379 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "AetheryteShortcut": "Thavnair - Palaka's Stand" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1042564, + "Position": { + "X": 423.63623, + "Y": 3.1168795, + "Z": -273.8537 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1042565, + "Position": { + "X": 393.14856, + "Y": 3.1164212, + "Z": -212.9397 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1042567, + "Position": { + "X": 374.80737, + "Y": 3.1168795, + "Z": -256.45844 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1042572, + "Position": { + "X": 374.44104, + "Y": 3.1168795, + "Z": -257.64862 + }, + "StopDistance": 5, + "TerritoryId": 957, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 2013267, + "Position": { + "X": 205.70679, + "Y": 7.9193726, + "Z": -180.34644 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CHRHDB831_04718_Q4_000_000", + "Answer": "TEXT_CHRHDB831_04718_A4_000_001" + } + ] + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 2013268, + "Position": { + "X": 36.209595, + "Y": 17.196838, + "Z": -232.68488 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CHRHDB831_04718_Q5_000_000", + "Answer": "TEXT_CHRHDB831_04718_A5_000_001" + } + ] + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 2013269, + "Position": { + "X": -13.565308, + "Y": 22.964722, + "Z": -346.7613 + }, + "TerritoryId": 957, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1042573, + "Position": { + "X": 565.91125, + "Y": 13.300535, + "Z": 242.48108 + }, + "StopDistance": 7, + "TerritoryId": 957, + "InteractionType": "CompleteQuest", + "NextQuestId": 4719 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4719_Generational Bonding.json b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4719_Generational Bonding.json new file mode 100644 index 00000000..19d9c1bf --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4719_Generational Bonding.json @@ -0,0 +1,120 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1042573, + "Position": { + "X": 565.91125, + "Y": 13.300535, + "Z": 242.48108 + }, + "StopDistance": 7, + "TerritoryId": 957, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1044765, + "Position": { + "X": 9.567322, + "Y": -6.762952E-05, + "Z": 17.715698 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "AetheryteShortcut": "Radz-at-Han" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1044752, + "Position": { + "X": -432.02875, + "Y": 22.24389, + "Z": 507.53027 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "AetheryteShortcut": "Garlemald - Camp Broken Glass" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1044754, + "Position": { + "X": -458.3963, + "Y": 20.805109, + "Z": -333.69952 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2013272, + "Position": { + "X": 697.8712, + "Y": 30.105957, + "Z": -789.7612 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "AetheryteShortcut": "Garlemald - Tertium", + "Fly": true + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1044762, + "Position": { + "X": 694.97217, + "Y": 30.104027, + "Z": -785.8244 + }, + "StopDistance": 5, + "TerritoryId": 958, + "InteractionType": "SinglePlayerDuty" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1044765, + "Position": { + "X": 9.567322, + "Y": -6.762952E-05, + "Z": 17.715698 + }, + "StopDistance": 5, + "TerritoryId": 963, + "InteractionType": "CompleteQuest", + "NextQuestId": 4754 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4754_By Agents Unknown.json b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4754_By Agents Unknown.json new file mode 100644 index 00000000..d2d7b9cc --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4754_By Agents Unknown.json @@ -0,0 +1,120 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1044768, + "Position": { + "X": 11.154297, + "Y": -0.00010118321, + "Z": 14.816467 + }, + "StopDistance": 5, + "TerritoryId": 963, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1044769, + "Position": { + "X": 145.73889, + "Y": 27.059998, + "Z": 36.819946 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Radz-at-Han] Aetheryte Plaza", + "[Radz-at-Han] Kama" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": 31.966597, + "Y": 5.8818626, + "Z": 580.4358 + }, + "TerritoryId": 957, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "ComplexCombatData": [ + { + "DataId": 13527, + "MinimumKillCount": 1, + "RewardItemId": 2003459, + "RewardItemCount": 1 + } + ], + "AetheryteShortcut": "Thavnair - Yedlihmad", + "Fly": true + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1044774, + "Position": { + "X": -483.57367, + "Y": 1.580146, + "Z": -24.551819 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "AetheryteShortcut": "Thavnair - Great Work", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2013336, + "Position": { + "X": -589.50183, + "Y": 2.2735596, + "Z": -285.42004 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1044772, + "Position": { + "X": 147.35632, + "Y": 27.059998, + "Z": 32.700073 + }, + "TerritoryId": 963, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Radz-at-Han", + "AethernetShortcut": [ + "[Radz-at-Han] Aetheryte Plaza", + "[Radz-at-Han] Kama" + ], + "NextQuestId": 4755 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4755_Not from Around Here.json b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4755_Not from Around Here.json new file mode 100644 index 00000000..1dfcd8e6 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4755_Not from Around Here.json @@ -0,0 +1,205 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1044783, + "Position": { + "X": -313.4051, + "Y": 93.68002, + "Z": -316.7926 + }, + "StopDistance": 5, + "TerritoryId": 957, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Thavnair - Great Work", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1044788, + "Position": { + "X": -42.191284, + "Y": 2.4950514, + "Z": -36.14868 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "AetheryteShortcut": "Old Sharlayan", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_CHRHDB842_04755_Q2_000_000", + "Answer": "TEXT_CHRHDB842_04755_A2_000_001" + } + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1039544, + "Position": { + "X": -29.617859, + "Y": 179.71387, + "Z": -826.2302 + }, + "TerritoryId": 956, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Old Sharlayan] Aetheryte Plaza", + "[Old Sharlayan] The Hall of Artifice (Labyrinthos)" + ], + "TargetTerritoryId": 962 + }, + { + "DataId": 1044794, + "Position": { + "X": -63.09613, + "Y": 18, + "Z": -297.59674 + }, + "TerritoryId": 962, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1044799, + "Position": { + "X": 408.49915, + "Y": 170.17088, + "Z": -431.7235 + }, + "TerritoryId": 956, + "InteractionType": "Interact", + "AetheryteShortcut": "Labyrinthos - Archeion" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1044805, + "Position": { + "X": 435.26355, + "Y": 65.16199, + "Z": -134.20312 + }, + "TerritoryId": 956, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1044806, + "Position": { + "X": 414.87744, + "Y": 65.16199, + "Z": -117.784424 + }, + "TerritoryId": 956, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1044807, + "Position": { + "X": 494.40747, + "Y": 65.16199, + "Z": -82.993835 + }, + "TerritoryId": 956, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1044809, + "Position": { + "X": 470.90857, + "Y": 65.16199, + "Z": -85.61841 + }, + "TerritoryId": 956, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1044765, + "Position": { + "X": 9.567322, + "Y": -6.762952E-05, + "Z": 17.715698 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "AetheryteShortcut": "Radz-at-Han" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1044768, + "Position": { + "X": 11.154297, + "Y": -0.00010118321, + "Z": 14.816467 + }, + "TerritoryId": 963, + "InteractionType": "CompleteQuest", + "NextQuestId": 4799 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4799_Of Duplicity and Duplication.json b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4799_Of Duplicity and Duplication.json new file mode 100644 index 00000000..3c4d70a2 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4799_Of Duplicity and Duplication.json @@ -0,0 +1,152 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1044768, + "Position": { + "X": 11.154297, + "Y": -0.00010118321, + "Z": 14.816467 + }, + "TerritoryId": 963, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1044815, + "Position": { + "X": 182.17737, + "Y": 5.3180933, + "Z": 646.3873 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "AetheryteShortcut": "Thavnair - Yedlihmad" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1044821, + "Position": { + "X": 216.38806, + "Y": 10.035135, + "Z": 613.79407 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1044822, + "Position": { + "X": 244.09851, + "Y": 9.916463, + "Z": 575.8601 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "Position": { + "X": 203.62158, + "Y": 1.7700036, + "Z": 711.6622 + }, + "TerritoryId": 957, + "InteractionType": "WalkTo", + "Fly": true, + "SkipConditions": { + "StepIf": { + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + } + }, + { + "DataId": 1044820, + "Position": { + "X": 205.09644, + "Y": 1.7700036, + "Z": 710.84155 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1044824, + "Position": { + "X": 212.4513, + "Y": 4.763736, + "Z": 653.65063 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1044830, + "Position": { + "X": 25.680908, + "Y": 1.5596709, + "Z": 634.5464 + }, + "StopDistance": 5, + "TerritoryId": 957, + "InteractionType": "CompleteQuest", + "NextQuestId": 4800 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4800_Gentlemen at Heart.json b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4800_Gentlemen at Heart.json new file mode 100644 index 00000000..1c46edd9 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Stories/Hildibrand/4800_Gentlemen at Heart.json @@ -0,0 +1,73 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1044835, + "Position": { + "X": 24.338135, + "Y": 1.6764785, + "Z": 631.1284 + }, + "StopDistance": 5, + "TerritoryId": 957, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": -18.503275, + "Y": 56.94149, + "Z": 74.85906 + }, + "TerritoryId": 957, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1044751, + "Position": { + "X": -16.617126, + "Y": 56.856533, + "Z": 74.052 + }, + "TerritoryId": 957, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "TerritoryId": 1183, + "InteractionType": "Duty", + "ContentFinderConditionId": 944 + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1044768, + "Position": { + "X": 11.154297, + "Y": -0.00010118321, + "Z": 14.816467 + }, + "StopDistance": 5, + "TerritoryId": 963, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Stories/Omega - Beyond the Rift/4586_A Heartless Hypothesis.json b/QuestPaths/6.x - Endwalker/Side Stories/Omega - Beyond the Rift/4586_A Heartless Hypothesis.json new file mode 100644 index 00000000..f0580396 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Stories/Omega - Beyond the Rift/4586_A Heartless Hypothesis.json @@ -0,0 +1,222 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1042796, + "Position": { + "X": -12.100403, + "Y": -16.147, + "Z": 153.76514 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039550, + "Position": { + "X": -620.7218, + "Y": -27.670597, + "Z": 302.17432 + }, + "TerritoryId": 956, + "InteractionType": "Interact", + "AetheryteShortcut": "Labyrinthos - Aporia", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + }, + "TargetTerritoryId": 956 + }, + { + "Position": { + "X": -431.53903, + "Y": -220.1193, + "Z": 301.76364 + }, + "TerritoryId": 956, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1042797, + "Position": { + "X": -393.20978, + "Y": -220.20282, + "Z": 283.16162 + }, + "TerritoryId": 956, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1042799, + "Position": { + "X": -395.37653, + "Y": -220.20282, + "Z": 285.66406 + }, + "TerritoryId": 956, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_STMBDR601_04586_Q2_000_107", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1042803, + "Position": { + "X": 43.289795, + "Y": -1.4816303E-06, + "Z": -55.680176 + }, + "TerritoryId": 963, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1042887, + "Position": { + "X": 108.72046, + "Y": 26.999989, + "Z": 14.90802 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Radz-at-Han] Aetheryte Plaza", + "[Radz-at-Han] Kama" + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1039539, + "Position": { + "X": 87.662964, + "Y": 27.06, + "Z": 28.030762 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1042804, + "Position": { + "X": 87.35791, + "Y": 26.99999, + "Z": 56.687256 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1042803, + "Position": { + "X": 116.01684, + "Y": 26.99999, + "Z": 45.689087 + }, + "StopDistance": 0.25, + "TerritoryId": 963, + "InteractionType": "Interact", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_STMBDR601_04586_Q5_000_225", + "Answer": "TEXT_STMBDR601_04586_A5_000_228" + } + ] + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1039541, + "Position": { + "X": -159.3805, + "Y": 23.999973, + "Z": 110.61267 + }, + "TerritoryId": 963, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Radz-at-Han] Kama", + "[Radz-at-Han] Ruveydah Fibers" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1042805, + "Position": { + "X": -57.480774, + "Y": 14, + "Z": 106.82837 + }, + "StopDistance": 4, + "TerritoryId": 963, + "InteractionType": "CompleteQuest", + "NextQuestId": 4587 + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Stories/Omega - Beyond the Rift/4587_Good-bye, x.json b/QuestPaths/6.x - Endwalker/Side Stories/Omega - Beyond the Rift/4587_Good-bye, x.json new file mode 100644 index 00000000..cc261a21 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Stories/Omega - Beyond the Rift/4587_Good-bye, x.json @@ -0,0 +1,262 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1042807, + "Position": { + "X": -59.06775, + "Y": 13.999993, + "Z": 114.67151 + }, + "StopDistance": 6, + "TerritoryId": 963, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1042809, + "Position": { + "X": -378.43903, + "Y": 22, + "Z": 494.9873 + }, + "TerritoryId": 958, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1042811, + "Position": { + "X": -323.23187, + "Y": 22, + "Z": 500.35852 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "Position": { + "X": -277.7818, + "Y": 25.227219, + "Z": 423.6428 + }, + "TerritoryId": 958, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1042810, + "Position": { + "X": -276.41718, + "Y": 25.227219, + "Z": 425.4673 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1042809, + "Position": { + "X": -331.9679, + "Y": 22.585815, + "Z": 430.56573 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1042829, + "Position": { + "X": -330.86145, + "Y": 22.310896, + "Z": 431.4182 + }, + "TerritoryId": 958, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1042813, + "Position": { + "X": 591.30237, + "Y": 34.877754, + "Z": 191.30237 + }, + "TerritoryId": 958, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1043126, + "Position": { + "X": 605.9509, + "Y": 34.7239, + "Z": 203.32642 + }, + "StopDistance": 5, + "TerritoryId": 958, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1042816, + "Position": { + "X": 31.967651, + "Y": -132.9464, + "Z": -563.5615 + }, + "TerritoryId": 959, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1042818, + "Position": { + "X": -1.6327515, + "Y": -28.024765, + "Z": -216.23566 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_STMBDR602_04587_Q4_000_294", + "Answer": "TEXT_STMBDR602_04587_A4_000_295" + } + ] + } + ] + }, + { + "Sequence": 9, + "Steps": [ + { + "DataId": 1038930, + "Position": { + "X": -415.39636, + "Y": 136.98077, + "Z": 575.7992 + }, + "TerritoryId": 959, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 10, + "Steps": [ + { + "DataId": 1039550, + "Position": { + "X": -620.7218, + "Y": -27.670597, + "Z": 302.17432 + }, + "TerritoryId": 956, + "InteractionType": "Interact", + "AetheryteShortcut": "Labyrinthos - Aporia", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + }, + "TargetTerritoryId": 956 + }, + { + "Position": { + "X": -431.53903, + "Y": -220.1193, + "Z": 301.76364 + }, + "TerritoryId": 956, + "InteractionType": "WalkTo", + "Fly": true + }, + { + "DataId": 1042800, + "Position": { + "X": -393.0572, + "Y": -220.20284, + "Z": 284.71802 + }, + "TerritoryId": 956, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1042822, + "Position": { + "X": 111.039795, + "Y": -10.587426, + "Z": 280.38452 + }, + "TerritoryId": 962, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Tataru's Grand Endeavor/4761_Aggressive Expansion.json b/QuestPaths/6.x - Endwalker/Side Stories/Tataru's Grand Endeavor/4761_Aggressive Expansion.json similarity index 100% rename from QuestPaths/6.x - Endwalker/Tataru's Grand Endeavor/4761_Aggressive Expansion.json rename to QuestPaths/6.x - Endwalker/Side Stories/Tataru's Grand Endeavor/4761_Aggressive Expansion.json diff --git a/QuestPaths/6.x - Endwalker/Tataru's Grand Endeavor/4762_Forever in Our Hearts.json b/QuestPaths/6.x - Endwalker/Side Stories/Tataru's Grand Endeavor/4762_Forever in Our Hearts.json similarity index 100% rename from QuestPaths/6.x - Endwalker/Tataru's Grand Endeavor/4762_Forever in Our Hearts.json rename to QuestPaths/6.x - Endwalker/Side Stories/Tataru's Grand Endeavor/4762_Forever in Our Hearts.json diff --git a/QuestPaths/6.x - Endwalker/Side Stories/Tataru's Grand Endeavor/4812_Treasured Bonds.json b/QuestPaths/6.x - Endwalker/Side Stories/Tataru's Grand Endeavor/4812_Treasured Bonds.json new file mode 100644 index 00000000..ec71ebfb --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Stories/Tataru's Grand Endeavor/4812_Treasured Bonds.json @@ -0,0 +1,114 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1042599, + "Position": { + "X": 31.998047, + "Y": 5.1499996, + "Z": -67.73486 + }, + "TerritoryId": 962, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Old Sharlayan", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1046136, + "Position": { + "X": -341.39008, + "Y": 22.3, + "Z": -103.74609 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Old Sharlayan] Aetheryte Plaza", + "[Old Sharlayan] The Studium" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1046138, + "Position": { + "X": 30.960571, + "Y": 5.1499996, + "Z": -66.88031 + }, + "StopDistance": 7, + "TerritoryId": 962, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1046139, + "Position": { + "X": 87.63245, + "Y": -16.247002, + "Z": 123.76587 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Old Sharlayan] Aetheryte Plaza", + "[Old Sharlayan] Scholar's Harbor" + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1046141, + "Position": { + "X": -133.4707, + "Y": 28.049995, + "Z": 219.65356 + }, + "StopDistance": 5, + "TerritoryId": 963, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 2013721, + "Position": { + "X": 406.30188, + "Y": 13.01593, + "Z": -299.8551 + }, + "TerritoryId": 957, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Thavnair - Palaka's Stand", + "Fly": true + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Side Stories/Tataru's Grand Endeavor/4813_More Precious than Gil.json b/QuestPaths/6.x - Endwalker/Side Stories/Tataru's Grand Endeavor/4813_More Precious than Gil.json new file mode 100644 index 00000000..39c2cefa --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Stories/Tataru's Grand Endeavor/4813_More Precious than Gil.json @@ -0,0 +1,167 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1046203, + "Position": { + "X": 406.42407, + "Y": 3.1168795, + "Z": -272.26672 + }, + "StopDistance": 5, + "TerritoryId": 957, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Thavnair - Palaka's Stand", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1046203, + "Position": { + "X": 406.42407, + "Y": 3.1168795, + "Z": -272.26672 + }, + "StopDistance": 5, + "TerritoryId": 957, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1037703, + "Position": { + "X": 423.7887, + "Y": 3.1168795, + "Z": -269.73376 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1037707, + "Position": { + "X": 432.02856, + "Y": 5.912681, + "Z": -225.20789 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1039517, + "Position": { + "X": 376.6078, + "Y": 5.709401, + "Z": -220.50812 + }, + "TerritoryId": 957, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1046203, + "Position": { + "X": 545.292, + "Y": 10.612534, + "Z": 232.90868 + }, + "StopDistance": 0.5, + "TerritoryId": 957, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1037630, + "Position": { + "X": 401.8158, + "Y": 3.1168792, + "Z": -273.76215 + }, + "StopDistance": 7, + "TerritoryId": 957, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1042599, + "Position": { + "X": 31.998047, + "Y": 5.1499996, + "Z": -67.73486 + }, + "TerritoryId": 962, + "InteractionType": "Interact", + "AetheryteShortcut": "Old Sharlayan" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1042599, + "Position": { + "X": 31.998047, + "Y": 5.1499996, + "Z": -67.73486 + }, + "TerritoryId": 962, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/7.x - Dawntrail/Aether Currents/Heritage Found/5159_He Who Remembers.json b/QuestPaths/7.x - Dawntrail/Aether Currents/Heritage Found/5159_He Who Remembers.json index 55270650..7fdb2f05 100644 --- a/QuestPaths/7.x - Dawntrail/Aether Currents/Heritage Found/5159_He Who Remembers.json +++ b/QuestPaths/7.x - Dawntrail/Aether Currents/Heritage Found/5159_He Who Remembers.json @@ -20,6 +20,15 @@ { "Sequence": 1, "Steps": [ + { + "Position": { + "X": -392.35907, + "Y": -14.000012, + "Z": 635.3141 + }, + "TerritoryId": 1191, + "InteractionType": "WalkTo" + }, { "Position": { "X": -415.87146, diff --git a/QuestPaths/7.x - Dawntrail/Aether Currents/Heritage Found/5160_Auntie Knows Best.json b/QuestPaths/7.x - Dawntrail/Aether Currents/Heritage Found/5160_Auntie Knows Best.json index 47d856fe..6957d154 100644 --- a/QuestPaths/7.x - Dawntrail/Aether Currents/Heritage Found/5160_Auntie Knows Best.json +++ b/QuestPaths/7.x - Dawntrail/Aether Currents/Heritage Found/5160_Auntie Knows Best.json @@ -55,6 +55,24 @@ { "Sequence": 255, "Steps": [ + { + "Position": { + "X": 184.68884, + "Y": 99.24859, + "Z": -171.97504 + }, + "TerritoryId": 1191, + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": 148.14713, + "Y": 100.07344, + "Z": -135.20776 + }, + "TerritoryId": 1191, + "InteractionType": "WalkTo" + }, { "DataId": 2013966, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/Aether Currents/Kozama'uka/5085_All Good Potpacts Must Come to an End.json b/QuestPaths/7.x - Dawntrail/Aether Currents/Kozama'uka/5085_All Good Potpacts Must Come to an End.json index dfb62125..8e4b42da 100644 --- a/QuestPaths/7.x - Dawntrail/Aether Currents/Kozama'uka/5085_All Good Potpacts Must Come to an End.json +++ b/QuestPaths/7.x - Dawntrail/Aether Currents/Kozama'uka/5085_All Good Potpacts Must Come to an End.json @@ -102,7 +102,8 @@ "Z": 342.85498 }, "TerritoryId": 1188, - "InteractionType": "CompleteQuest" + "InteractionType": "CompleteQuest", + "Mount": true } ] } diff --git a/QuestPaths/7.x - Dawntrail/Aether Currents/Shaaloani/5138_Rroneek Seeker.json b/QuestPaths/7.x - Dawntrail/Aether Currents/Shaaloani/5138_Rroneek Seeker.json index 9db9564a..a492147a 100644 --- a/QuestPaths/7.x - Dawntrail/Aether Currents/Shaaloani/5138_Rroneek Seeker.json +++ b/QuestPaths/7.x - Dawntrail/Aether Currents/Shaaloani/5138_Rroneek Seeker.json @@ -20,6 +20,89 @@ { "Sequence": 1, "Steps": [ + + { + "DataId": 2013960, + "Position": { + "X": 380.30054, + "Y": -16.983276, + "Z": -508.17123 + }, + "TerritoryId": 1190, + "InteractionType": "AttuneAetherCurrent", + "AetherCurrentId": 2818452 + }, + { + "Position": { + "X": 616.9261, + "Y": -17.458832, + "Z": -435.18936 + }, + "TerritoryId": 1190, + "InteractionType": "WalkTo" + }, + { + "DataId": 2013961, + "Position": { + "X": 645.5939, + "Y": -11.7647705, + "Z": -417.65472 + }, + "TerritoryId": 1190, + "InteractionType": "AttuneAetherCurrent", + "AetherCurrentId": 2818456 + }, + { + "Position": { + "X": 659.8994, + "Y": -16.525915, + "Z": -173.6375 + }, + "TerritoryId": 1190, + "InteractionType": "WalkTo" + }, + { + "DataId": 2013963, + "Position": { + "X": 658.2893, + "Y": 21.011597, + "Z": 82.993774 + }, + "TerritoryId": 1190, + "InteractionType": "AttuneAetherCurrent", + "AetherCurrentId": 2818458 + }, + { + "Position": { + "X": 198.9425, + "Y": 6.210067, + "Z": -53.1092 + }, + "TerritoryId": 1190, + "InteractionType": "WalkTo" + }, + { + "DataId": 2013962, + "Position": { + "X": 183.88635, + "Y": 11.917236, + "Z": -59.342346 + }, + "TerritoryId": 1190, + "InteractionType": "AttuneAetherCurrent", + "AetherCurrentId": 2818457, + "DisableNavmesh": true + }, + { + "Position": { + "X": 290.40674, + "Y": -11.14023, + "Z": -126.13759 + }, + "TerritoryId": 1190, + "InteractionType": "WalkTo", + "DisableNavmesh": true + }, { "DataId": 1050656, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/Aether Currents/Shaaloani/5140_When the Bill Comes Due.json b/QuestPaths/7.x - Dawntrail/Aether Currents/Shaaloani/5140_When the Bill Comes Due.json index 49204d8c..11ce3cd7 100644 --- a/QuestPaths/7.x - Dawntrail/Aether Currents/Shaaloani/5140_When the Bill Comes Due.json +++ b/QuestPaths/7.x - Dawntrail/Aether Currents/Shaaloani/5140_When the Bill Comes Due.json @@ -28,7 +28,8 @@ "Z": 427.2068 }, "TerritoryId": 1190, - "InteractionType": "Interact" + "InteractionType": "Interact", + "Mount": true } ] }, @@ -50,6 +51,28 @@ { "Sequence": 3, "Steps": [ + { + "Position": { + "X": 369.3906, + "Y": 5.9371996, + "Z": 417.16574 + }, + "TerritoryId": 1190, + "InteractionType": "WalkTo", + "$": "Shaaloani Hhusatahwi Saloon Stairs (top)", + "Mount": true + }, + { + "Position": { + "X": 359.11545, + "Y": 1.9823306, + "Z": 419.5714 + }, + "TerritoryId": 1190, + "InteractionType": "WalkTo", + "$": "Shaaloani Hhusatahwi Saloon Stairs (bottom)", + "DisableNavmesh": true + }, { "DataId": 1051286, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/Aether Currents/Yak T'el/5094_Secrets in the Cinderfield.json b/QuestPaths/7.x - Dawntrail/Aether Currents/Yak T'el/5094_Secrets in the Cinderfield.json index 4357cd5d..a3e6ab87 100644 --- a/QuestPaths/7.x - Dawntrail/Aether Currents/Yak T'el/5094_Secrets in the Cinderfield.json +++ b/QuestPaths/7.x - Dawntrail/Aether Currents/Yak T'el/5094_Secrets in the Cinderfield.json @@ -174,6 +174,17 @@ { "Sequence": 255, "Steps": [ + { + "DataId": 2013948, + "Position": { + "X": 610.7728, + "Y": 9.597839, + "Z": 233.05103 + }, + "TerritoryId": 1189, + "InteractionType": "AttuneAetherCurrent", + "AetherCurrentId": 2818440 + }, { "DataId": 1051073, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4854_The Joy of Pictomancy.json b/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4854_The Joy of Pictomancy.json index 86f5071c..4423e4d1 100644 --- a/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4854_The Joy of Pictomancy.json +++ b/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4854_The Joy of Pictomancy.json @@ -20,7 +20,20 @@ "Prompt": "TEXT_KINGBB201_04854_Q1_000_000", "Answer": "TEXT_KINGBB201_04854_A1_000_002" } - ] + ], + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Conjurers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 133 + ] + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4855_Mind over Manor.json b/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4855_Mind over Manor.json index ee9ad55c..f135075a 100644 --- a/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4855_Mind over Manor.json +++ b/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4855_Mind over Manor.json @@ -14,11 +14,15 @@ "TerritoryId": 132, "InteractionType": "UseItem", "ItemId": 43538, + "AetheryteShortcut": "Gridania", "SkipConditions": { "StepIf": { "Item": { "NotInInventory": true } + }, + "AetheryteShortcutIf": { + "InSameTerritory": true } } }, @@ -84,9 +88,33 @@ "AethernetShortcut": [ "[Gridania] Conjurers' Guild", "[Gridania] Lancers' Guild" + ], + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_KINGBB202_04855_Q1_000_000", + "Answer": "TEXT_KINGBB202_04855_A1_000_001" + } ] } ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1049796, + "Position": { + "X": 27.695068, + "Y": 16.16987, + "Z": -339.13184 + }, + "StopDistance": 5, + "TerritoryId": 133, + "InteractionType": "CompleteQuest", + "NextQuestId": 4856 + } + ] } ] } diff --git a/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4856_Perspectives in Pursuit.json b/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4856_Perspectives in Pursuit.json new file mode 100644 index 00000000..15194589 --- /dev/null +++ b/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4856_Perspectives in Pursuit.json @@ -0,0 +1,120 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1049796, + "Position": { + "X": 27.695068, + "Y": 16.16987, + "Z": -339.13184 + }, + "TerritoryId": 133, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Gridania", + "AethernetShortcut": [ + "[Gridania] Aetheryte Plaza", + "[Gridania] Lancers' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 133 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1049797, + "Position": { + "X": 214.64856, + "Y": 301.99997, + "Z": -254.26111 + }, + "TerritoryId": 155, + "InteractionType": "Interact", + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "Mount": true + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1049798, + "Position": { + "X": 229.84656, + "Y": 302.04782, + "Z": -289.2348 + }, + "TerritoryId": 155, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2013740, + "Position": { + "X": 301.13672, + "Y": 358.99735, + "Z": -575.8297 + }, + "TerritoryId": 155, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": 403.64606, + "Y": 346.8219, + "Z": -669.97644 + }, + "StopDistance": 0.5, + "TerritoryId": 155, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 17628 + ], + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1049800, + "Position": { + "X": 215.77783, + "Y": 302, + "Z": -253.86438 + }, + "TerritoryId": 155, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "Mount": true, + "NextQuestId": 4857 + } + ] + } + ] +} diff --git a/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4857_The Crate Beyond.json b/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4857_The Crate Beyond.json new file mode 100644 index 00000000..504a1e9e --- /dev/null +++ b/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4857_The Crate Beyond.json @@ -0,0 +1,188 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1049797, + "Position": { + "X": 214.64856, + "Y": 301.99997, + "Z": -254.26111 + }, + "TerritoryId": 155, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "Mount": true + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2013741, + "Position": { + "X": 107.28613, + "Y": 11.9782715, + "Z": -76.676636 + }, + "TerritoryId": 628, + "InteractionType": "UseItem", + "ItemId": 2003500, + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] Sekiseigumi Barracks" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1049801, + "Position": { + "X": 445.9143, + "Y": 29.750532, + "Z": 770.8705 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Kugane] Sekiseigumi Barracks", + "[Kugane] The Ruby Price" + ], + "Fly": true, + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_KINGBB221_04857_Q2_000_000", + "Answer": "TEXT_KINGBB221_04857_A2_000_001" + } + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2013742, + "Position": { + "X": 411.79517, + "Y": 16.250854, + "Z": 832.4863 + }, + "TerritoryId": 613, + "InteractionType": "Combat", + "EnemySpawnType": "AfterItemUse", + "ItemId": 2003559, + "ComplexCombatData": [ + { + "DataId": 17629 + } + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 2013743, + "Position": { + "X": 338.4298, + "Y": 0.6866455, + "Z": 793.4232 + }, + "TerritoryId": 613, + "InteractionType": "Combat", + "EnemySpawnType": "AfterItemUse", + "ItemId": 2003559, + "ComplexCombatData": [ + { + "DataId": 17629 + } + ], + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 2013744, + "Position": { + "X": 415.61, + "Y": 0.7171631, + "Z": 730.4341 + }, + "TerritoryId": 613, + "InteractionType": "Combat", + "EnemySpawnType": "AfterItemUse", + "ItemId": 2003559, + "ComplexCombatData": [ + { + "DataId": 17629 + } + ], + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1049802, + "Position": { + "X": 444.6936, + "Y": 29.73244, + "Z": 770.9315 + }, + "TerritoryId": 613, + "InteractionType": "Interact", + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1049803, + "Position": { + "X": 105.85181, + "Y": 12.000005, + "Z": -75.70001 + }, + "TerritoryId": 628, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] Sekiseigumi Barracks" + ], + "NextQuestId": 4858 + } + ] + } + ] +} diff --git a/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4858_Beruru's Clues.json b/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4858_Beruru's Clues.json new file mode 100644 index 00000000..83262192 --- /dev/null +++ b/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4858_Beruru's Clues.json @@ -0,0 +1,143 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1049804, + "Position": { + "X": 105.69922, + "Y": 12.000006, + "Z": -77.37854 + }, + "TerritoryId": 628, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Kugane", + "AethernetShortcut": [ + "[Kugane] Aetheryte Plaza", + "[Kugane] Sekiseigumi Barracks" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 2013747, + "Position": { + "X": -57.63336, + "Y": 3.9520264, + "Z": -142.22937 + }, + "TerritoryId": 130, + "InteractionType": "UseItem", + "ItemId": 2003503, + "AetheryteShortcut": "Ul'dah" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1049805, + "Position": { + "X": -152.14777, + "Y": 14.005, + "Z": 45.303955 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Thaumaturges' Guild" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": -286.10168, + "Y": -32, + "Z": 92.85731 + }, + "StopDistance": 0.5, + "TerritoryId": 141, + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 17632, + 17633, + 17634, + 17635, + 17636, + 17637, + 17638, + 17639, + 17640 + ], + "AethernetShortcut": [ + "[Ul'dah] Thaumaturges' Guild", + "[Ul'dah] Gate of Nald (Central Thanalan)" + ], + "Fly": true + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1049806, + "Position": { + "X": -152.60547, + "Y": 14.004998, + "Z": 46.73828 + }, + "TerritoryId": 130, + "InteractionType": "Interact", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Thaumaturges' Guild" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1049805, + "Position": { + "X": -152.14777, + "Y": 14.005, + "Z": 45.303955 + }, + "StopDistance": 5, + "TerritoryId": 130, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_KINGBB231_04858_Q3_000_000", + "Answer": "TEXT_KINGBB231_04858_A3_000_002" + } + ], + "NextQuestId": 4859 + } + ] + } + ] +} diff --git a/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4859_Somewhere Only She Knows.json b/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4859_Somewhere Only She Knows.json new file mode 100644 index 00000000..47390e10 --- /dev/null +++ b/QuestPaths/7.x - Dawntrail/Class Quests/PCT/4859_Somewhere Only She Knows.json @@ -0,0 +1,95 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1049805, + "Position": { + "X": -152.14777, + "Y": 14.005, + "Z": 45.303955 + }, + "StopDistance": 5, + "TerritoryId": 130, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Thaumaturges' Guild" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 15.193803, + "Y": 2.4684885, + "Z": -133.5494 + }, + "TerritoryId": 148, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Central Shroud - Bentbranch Meadows" + }, + { + "DataId": 1049807, + "Position": { + "X": 14.419739, + "Y": 2.2207584, + "Z": -132.25 + }, + "TerritoryId": 148, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1049807, + "Position": { + "X": 14.419739, + "Y": 2.2207584, + "Z": -132.25 + }, + "TerritoryId": 148, + "InteractionType": "SinglePlayerDuty", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_KINGBB241_04859_Q2_000_000", + "Answer": "TEXT_KINGBB241_04859_A2_000_001" + } + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1049808, + "Position": { + "X": 17.013733, + "Y": 2.0418286, + "Z": -129.83911 + }, + "StopDistance": 7, + "TerritoryId": 148, + "InteractionType": "CompleteQuest" + } + ] + } + ] +} diff --git a/QuestPaths/7.x - Dawntrail/Class Quests/VPR/4848_Enter the Viper.json b/QuestPaths/7.x - Dawntrail/Class Quests/VPR/4848_Enter the Viper.json index 6e246198..2a3451f3 100644 --- a/QuestPaths/7.x - Dawntrail/Class Quests/VPR/4848_Enter the Viper.json +++ b/QuestPaths/7.x - Dawntrail/Class Quests/VPR/4848_Enter the Viper.json @@ -13,7 +13,13 @@ "Z": -99.321045 }, "TerritoryId": 130, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ul'dah", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Class Quests/VPR/4849_Fangs of the Viper.json b/QuestPaths/7.x - Dawntrail/Class Quests/VPR/4849_Fangs of the Viper.json index ccf61580..7ab43797 100644 --- a/QuestPaths/7.x - Dawntrail/Class Quests/VPR/4849_Fangs of the Viper.json +++ b/QuestPaths/7.x - Dawntrail/Class Quests/VPR/4849_Fangs of the Viper.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1235 - ], "QuestSequence": [ { "Sequence": 0, @@ -17,16 +14,27 @@ "TerritoryId": 131, "InteractionType": "UseItem", "ItemId": 43537, + "AetheryteShortcut": "Ul'dah", + "AethernetShortcut": [ + "[Ul'dah] Aetheryte Plaza", + "[Ul'dah] Weavers' Guild" + ], "SkipConditions": { "StepIf": { "Item": { "NotInInventory": true } + }, + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 131 + ] } } }, { - "TerritoryId": 131, + "TerritoryId": 131, "InteractionType": "EquipItem", "ItemId": 41808, "SkipConditions": { diff --git a/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4990_Test of Talents.json b/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4990_Test of Talents.json index 6a72ac37..368326b8 100644 --- a/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4990_Test of Talents.json +++ b/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4990_Test of Talents.json @@ -22,18 +22,13 @@ "Steps": [ { "TerritoryId": 1185, - "InteractionType": "None", - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "ItemId": 43899, "ItemCount": 6, "Collectability": 600 } - ], - "AetheryteShortcut": "Tuliyollal", - "AethernetShortcut": [ - "[Tuliyollal] Aetheryte Plaza", - "[Tuliyollal] Wachumeqimeqi" ] }, { @@ -45,7 +40,12 @@ }, "TerritoryId": 1185, "InteractionType": "CompleteQuest", - "NextQuestId": 4991 + "NextQuestId": 4991, + "AetheryteShortcut": "Tuliyollal", + "AethernetShortcut": [ + "[Tuliyollal] Aetheryte Plaza", + "[Tuliyollal] Wachumeqimeqi" + ] } ] } diff --git a/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4991_A Discerning Eye.json b/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4991_A Discerning Eye.json index 7150a44c..923cde19 100644 --- a/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4991_A Discerning Eye.json +++ b/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4991_A Discerning Eye.json @@ -22,18 +22,13 @@ "Steps": [ { "TerritoryId": 1185, - "InteractionType": "None", - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "ItemId": 43900, "ItemCount": 6, "Collectability": 600 } - ], - "AetheryteShortcut": "Tuliyollal", - "AethernetShortcut": [ - "[Tuliyollal] Aetheryte Plaza", - "[Tuliyollal] Wachumeqimeqi" ] }, { @@ -45,7 +40,12 @@ }, "TerritoryId": 1185, "InteractionType": "CompleteQuest", - "NextQuestId": 4992 + "NextQuestId": 4992, + "AetheryteShortcut": "Tuliyollal", + "AethernetShortcut": [ + "[Tuliyollal] Aetheryte Plaza", + "[Tuliyollal] Wachumeqimeqi" + ] } ] } diff --git a/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4992_As Nature Intends.json b/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4992_As Nature Intends.json index dd99b09b..d0769b6e 100644 --- a/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4992_As Nature Intends.json +++ b/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4992_As Nature Intends.json @@ -22,18 +22,13 @@ "Steps": [ { "TerritoryId": 1185, - "InteractionType": "None", - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "ItemId": 43901, "ItemCount": 6, "Collectability": 600 } - ], - "AetheryteShortcut": "Tuliyollal", - "AethernetShortcut": [ - "[Tuliyollal] Aetheryte Plaza", - "[Tuliyollal] Wachumeqimeqi" ] }, { @@ -45,7 +40,12 @@ }, "TerritoryId": 1185, "InteractionType": "CompleteQuest", - "NextQuestId": 4993 + "NextQuestId": 4993, + "AetheryteShortcut": "Tuliyollal", + "AethernetShortcut": [ + "[Tuliyollal] Aetheryte Plaza", + "[Tuliyollal] Wachumeqimeqi" + ] } ] } diff --git a/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4993_The Cycle of Life.json b/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4993_The Cycle of Life.json index 9b9155ff..80626854 100644 --- a/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4993_The Cycle of Life.json +++ b/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4993_The Cycle of Life.json @@ -41,17 +41,12 @@ "Steps": [ { "TerritoryId": 1185, - "InteractionType": "None", - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "ItemId": 43913, "ItemCount": 1 } - ], - "AetheryteShortcut": "Tuliyollal", - "AethernetShortcut": [ - "[Tuliyollal] Aetheryte Plaza", - "[Tuliyollal] Wachumeqimeqi" ] }, { @@ -63,7 +58,12 @@ }, "TerritoryId": 1185, "InteractionType": "CompleteQuest", - "NextQuestId": 4994 + "NextQuestId": 4994, + "AetheryteShortcut": "Tuliyollal", + "AethernetShortcut": [ + "[Tuliyollal] Aetheryte Plaza", + "[Tuliyollal] Wachumeqimeqi" + ] } ] } diff --git a/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4994_Digging Up the Truth.json b/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4994_Digging Up the Truth.json index 1202151e..706b7190 100644 --- a/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4994_Digging Up the Truth.json +++ b/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4994_Digging Up the Truth.json @@ -22,18 +22,13 @@ "Steps": [ { "TerritoryId": 1185, - "InteractionType": "None", - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "ItemId": 43902, "ItemCount": 6, "Collectability": 600 } - ], - "AetheryteShortcut": "Tuliyollal", - "AethernetShortcut": [ - "[Tuliyollal] Aetheryte Plaza", - "[Tuliyollal] Wachumeqimeqi" ] }, { @@ -45,7 +40,12 @@ }, "TerritoryId": 1185, "InteractionType": "CompleteQuest", - "NextQuestId": 4995 + "NextQuestId": 4995, + "AetheryteShortcut": "Tuliyollal", + "AethernetShortcut": [ + "[Tuliyollal] Aetheryte Plaza", + "[Tuliyollal] Wachumeqimeqi" + ] } ] } diff --git a/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4995_Wellspring of Tears.json b/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4995_Wellspring of Tears.json index 03be2b82..f79bfff6 100644 --- a/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4995_Wellspring of Tears.json +++ b/QuestPaths/7.x - Dawntrail/Custom Deliveries/Wachumeqimeqi/MIN, BTN/4995_Wellspring of Tears.json @@ -205,6 +205,16 @@ } } }, + { + "TerritoryId": 1189, + "InteractionType": "Gather", + "ItemsToGather": [ + { + "ItemId": 43914, + "ItemCount": 1 + } + ] + }, { "Position": { "X": 674.17834, @@ -213,13 +223,7 @@ }, "TerritoryId": 1189, "InteractionType": "WalkTo", - "Fly": true, - "RequiredGatheredItems": [ - { - "ItemId": 43914, - "ItemCount": 1 - } - ] + "Fly": true }, { "Position": { diff --git a/QuestPaths/7.x - Dawntrail/Leves/BTN/L1770_All Stars.json b/QuestPaths/7.x - Dawntrail/Leves/BTN/L1770_All Stars.json index 293ab4d6..6ec5d961 100644 --- a/QuestPaths/7.x - Dawntrail/Leves/BTN/L1770_All Stars.json +++ b/QuestPaths/7.x - Dawntrail/Leves/BTN/L1770_All Stars.json @@ -23,8 +23,8 @@ }, { "TerritoryId": 1188, - "InteractionType": "None", - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "ItemId": 2003516, "AlternativeItemId": 2003517, diff --git a/QuestPaths/7.x - Dawntrail/Leves/BTN/L1779_New Start for the Cinderfield.json b/QuestPaths/7.x - Dawntrail/Leves/BTN/L1779_New Start for the Cinderfield.json index d7abd609..c9d872c3 100644 --- a/QuestPaths/7.x - Dawntrail/Leves/BTN/L1779_New Start for the Cinderfield.json +++ b/QuestPaths/7.x - Dawntrail/Leves/BTN/L1779_New Start for the Cinderfield.json @@ -23,8 +23,8 @@ }, { "TerritoryId": 1189, - "InteractionType": "None", - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "ItemId": 2003529, "AlternativeItemId": 2003530, diff --git a/QuestPaths/7.x - Dawntrail/Leves/MIN/L1785_Old and Bubbly.json b/QuestPaths/7.x - Dawntrail/Leves/MIN/L1785_Old and Bubbly.json index e5f1f299..dd7d68cd 100644 --- a/QuestPaths/7.x - Dawntrail/Leves/MIN/L1785_Old and Bubbly.json +++ b/QuestPaths/7.x - Dawntrail/Leves/MIN/L1785_Old and Bubbly.json @@ -23,8 +23,8 @@ }, { "TerritoryId": 1187, - "InteractionType": "None", - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "ItemId": 2003539, "AlternativeItemId": 2003540, diff --git a/QuestPaths/7.x - Dawntrail/Leves/MIN/L1794_Vestiges of War.json b/QuestPaths/7.x - Dawntrail/Leves/MIN/L1794_Vestiges of War.json index 75e19368..38e43e0f 100644 --- a/QuestPaths/7.x - Dawntrail/Leves/MIN/L1794_Vestiges of War.json +++ b/QuestPaths/7.x - Dawntrail/Leves/MIN/L1794_Vestiges of War.json @@ -23,8 +23,8 @@ }, { "TerritoryId": 1189, - "InteractionType": "None", - "RequiredGatheredItems": [ + "InteractionType": "Gather", + "ItemsToGather": [ { "ItemId": 2003552, "AlternativeItemId": 2003553, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4867_The Feat of Reeds.json b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4867_The Feat of Reeds.json index c69575bd..b3a2d6b2 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4867_The Feat of Reeds.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4867_The Feat of Reeds.json @@ -136,7 +136,7 @@ "Z": -532.15845 }, "TerritoryId": 1188, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Snipe", "Comment": "Inspect Eye, Carrying Pole and Tail", "AetheryteShortcut": "Kozama'uka - Ok'hanu" } diff --git a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4868_A Well-mannered Shipwright.json b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4868_A Well-mannered Shipwright.json index 4a550c01..28bd626b 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4868_A Well-mannered Shipwright.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4868_A Well-mannered Shipwright.json @@ -151,13 +151,21 @@ "Steps": [ { "Position": { - "X": -510.96463, - "Y": -0.47684515, - "Z": -305.96155 + "X": -510.37933, + "Y": -0.39999998, + "Z": -277.78192 }, "TerritoryId": 1188, - "InteractionType": "WalkTo", - "Comment": "Waypoint after swimming through the river" + "InteractionType": "WalkTo" + }, + { + "Position": { + "X": -521.0261, + "Y": -0.40000004, + "Z": -329.19336 + }, + "TerritoryId": 1188, + "InteractionType": "WalkTo" }, { "DataId": 2013936, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4870_Knowing the Hanuhanu.json b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4870_Knowing the Hanuhanu.json index 83eb0953..d54e499a 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4870_Knowing the Hanuhanu.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4870_Knowing the Hanuhanu.json @@ -12,7 +12,7 @@ "Y": 9.773315, "Z": -533.135 }, - "StopDistance": 5, + "StopDistance": 7, "TerritoryId": 1188, "InteractionType": "AcceptQuest" } @@ -135,6 +135,28 @@ { "Sequence": 255, "Steps": [ + { + "DataId": 1048782, + "Position": { + "X": -68.52832, + "Y": 6.536739, + "Z": -486.53394 + }, + "TerritoryId": 1188, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5064 + }, + { + "DataId": 1051237, + "Position": { + "X": -251.20929, + "Y": 5.5572896, + "Z": -554.89435 + }, + "TerritoryId": 1188, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5081 + }, { "DataId": 1046537, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4872_Traders of Happiness.json b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4872_Traders of Happiness.json index 7ce2e342..d1e8367e 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4872_Traders of Happiness.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4872_Traders of Happiness.json @@ -21,6 +21,11 @@ { "Sequence": 1, "Steps": [ + { + "TerritoryId": 1187, + "InteractionType": "AttuneAetheryte", + "Aetheryte": "Urqopacha - Wachunpelo" + }, { "DataId": 1046557, "Position": { @@ -39,11 +44,6 @@ 128 ] }, - { - "TerritoryId": 1187, - "InteractionType": "AttuneAetheryte", - "Aetheryte": "Urqopacha - Wachunpelo" - }, { "DataId": 1046559, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4877_Knowing the Pelupelu.json b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4877_Knowing the Pelupelu.json index 7166e4a6..879ca750 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4877_Knowing the Pelupelu.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4877_Knowing the Pelupelu.json @@ -52,6 +52,30 @@ { "Sequence": 255, "Steps": [ + { + "DataId": 1050684, + "Position": { + "X": 391.37854, + "Y": -156.07434, + "Z": -388.50995 + }, + "TerritoryId": 1187, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5039, + "Comment": "Traveler to the Rescue" + }, + { + "DataId": 1051195, + "Position": { + "X": 383.29138, + "Y": -154.50243, + "Z": -420.49292 + }, + "TerritoryId": 1187, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5051, + "Comment": "Crisis of Corruption" + }, { "DataId": 1046537, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4878_The Success of Others.json b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4878_The Success of Others.json index 3d40ae97..b6f50a5c 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4878_The Success of Others.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4878_The Success of Others.json @@ -100,7 +100,7 @@ "Y": -19.725424, "Z": 203.72314 }, - "StopDistance": 5, + "StopDistance": 7, "TerritoryId": 1185, "InteractionType": "CompleteQuest" } diff --git a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4879_For All Turali.json b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4879_For All Turali.json index 7c803180..28e35590 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4879_For All Turali.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4879_For All Turali.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1167 - ], "QuestSequence": [ { "Sequence": 0, @@ -15,6 +12,7 @@ "Y": -19.725424, "Z": 203.72314 }, + "StopDistance": 7, "TerritoryId": 1185, "InteractionType": "AcceptQuest" } diff --git a/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4881_Lending a Helphand.json b/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4881_Lending a Helphand.json index 5fbb423b..29d5bcb0 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4881_Lending a Helphand.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4881_Lending a Helphand.json @@ -28,7 +28,7 @@ "Z": 343.7704 }, "TerritoryId": 1188, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Snipe", "Comment": "Click (from left to right) worn tools, Kaahe, crafting materials, untouched meal" } ] diff --git a/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4884_The Shape of Peace.json b/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4884_The Shape of Peace.json index e5d6be1e..32e96d54 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4884_The Shape of Peace.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4884_The Shape of Peace.json @@ -63,6 +63,28 @@ { "Sequence": 3, "Steps": [ + { + "DataId": 1051263, + "Position": { + "X": -521.0193, + "Y": 121.63345, + "Z": 319.38647 + }, + "TerritoryId": 1188, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5085 + }, + { + "DataId": 1048855, + "Position": { + "X": -491.63043, + "Y": 121.63846, + "Z": 271.50366 + }, + "TerritoryId": 1188, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5074 + }, { "DataId": 1046876, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4885_Lost Promise.json b/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4885_Lost Promise.json index 9ea2d2f8..4b02bd7e 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4885_Lost Promise.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4885_Lost Promise.json @@ -59,6 +59,7 @@ "Y": 115.180565, "Z": 236.59106 }, + "StopDistance": 4, "TerritoryId": 1188, "InteractionType": "Interact" }, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4889_History's Keepers.json b/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4889_History's Keepers.json index eb22764c..60df9000 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4889_History's Keepers.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4889_History's Keepers.json @@ -12,6 +12,7 @@ "Y": 119.49004, "Z": 190.72253 }, + "StopDistance": 5, "TerritoryId": 1188, "InteractionType": "AcceptQuest" } @@ -29,7 +30,8 @@ }, "TerritoryId": 1188, "InteractionType": "Interact", - "AetheryteShortcut": "Kozama'uka - Earthenshire" + "AetheryteShortcut": "Kozama'uka - Earthenshire", + "Fly": true } ] }, @@ -44,7 +46,8 @@ }, "TerritoryId": 1188, "InteractionType": "WalkTo", - "TargetTerritoryId": 1187 + "TargetTerritoryId": 1187, + "Fly": true }, { "DataId": 1046814, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4891_The High Luminary.json b/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4891_The High Luminary.json index fd17edfa..8b1a2021 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4891_The High Luminary.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4891_The High Luminary.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1193 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4894_The Skyruin.json b/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4894_The Skyruin.json index 170b1a17..3b8ee005 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4894_The Skyruin.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4894_The Skyruin.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1195 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4896_The Promise of Peace.json b/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4896_The Promise of Peace.json index 300238e9..03eed811 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4896_The Promise of Peace.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/B-Kozama'uka2-Urqopacha2/4896_The Promise of Peace.json @@ -21,6 +21,30 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1051207, + "Position": { + "X": 425.07043, + "Y": 118.935005, + "Z": 606.13403 + }, + "StopDistance": 5, + "TerritoryId": 1187, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5055 + }, + { + "DataId": 1048730, + "Position": { + "X": 399.0692, + "Y": 122.53533, + "Z": 542.9922 + }, + "StopDistance": 5, + "TerritoryId": 1187, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5047 + }, { "DataId": 1046926, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4902_Taking a Stand.json b/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4902_Taking a Stand.json index 0c7f0af7..4a4940cc 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4902_Taking a Stand.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4902_Taking a Stand.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1211 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4903_Into the Traverse.json b/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4903_Into the Traverse.json index 52a6b9a8..f6cca46e 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4903_Into the Traverse.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4903_Into the Traverse.json @@ -21,6 +21,36 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1050872, + "Position": { + "X": -408.71295, + "Y": 20.420113, + "Z": -398.8861 + }, + "TerritoryId": 1189, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "ExcelSheet": "quest/051/KinGzd201_05110", + "Prompt": "TEXT_KINGZD201_05110_Q1_000_000", + "Answer": "TEXT_KINGZD201_05110_A1_000_001" + } + ], + "PickUpQuestId": 5110 + }, + { + "DataId": 1051073, + "Position": { + "X": 41.09253, + "Y": 8.205902, + "Z": -629.8467 + }, + "TerritoryId": 1189, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5094 + }, { "DataId": 1047577, "Position": { @@ -36,28 +66,6 @@ { "Sequence": 2, "Steps": [ - { - "DataId": 2013948, - "Position": { - "X": 610.7728, - "Y": 9.597839, - "Z": 233.05103 - }, - "TerritoryId": 1189, - "InteractionType": "AttuneAetherCurrent", - "AetherCurrentId": 2818440 - }, - { - "Position": { - "X": 614.25964, - "Y": -29.554798, - "Z": 202.75368 - }, - "TerritoryId": 1189, - "InteractionType": "WalkTo", - "DisableNavmesh": true, - "Mount": false - }, { "DataId": 1048230, "Position": { @@ -66,8 +74,7 @@ "Z": 214.83167 }, "TerritoryId": 1189, - "InteractionType": "Interact", - "DisableNavmesh": true + "InteractionType": "Interact" } ] }, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4908_The Feat of Brotherhood.json b/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4908_The Feat of Brotherhood.json index abb2d9bf..0b7c8b47 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4908_The Feat of Brotherhood.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4908_The Feat of Brotherhood.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1212 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4909_Road to the Golden City.json b/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4909_Road to the Golden City.json index c959a428..384623ce 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4909_Road to the Golden City.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4909_Road to the Golden City.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1194 - ], "QuestSequence": [ { "Sequence": 0, @@ -15,7 +12,7 @@ "Y": -137.174, "Z": 559.47205 }, - "StopDistance": 5, + "StopDistance": 7, "TerritoryId": 1189, "InteractionType": "AcceptQuest" } @@ -24,6 +21,28 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1051052, + "Position": { + "X": 585.90063, + "Y": -142.49187, + "Z": 510.21594 + }, + "TerritoryId": 1189, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5103 + }, + { + "DataId": 1050884, + "Position": { + "X": 531.0597, + "Y": -142.49185, + "Z": 492.0271 + }, + "TerritoryId": 1189, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5114 + }, { "DataId": 1047701, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4918_One With Nature.json b/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4918_One With Nature.json index 7d5d4d3f..cbd540d9 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4918_One With Nature.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4918_One With Nature.json @@ -56,78 +56,6 @@ "InteractionType": "AttuneAetheryte", "Aetheryte": "Shaaloani - Mehwahhetsoan" }, - { - "DataId": 2013960, - "Position": { - "X": 380.30054, - "Y": -16.983276, - "Z": -508.17123 - }, - "TerritoryId": 1190, - "InteractionType": "AttuneAetherCurrent", - "AetherCurrentId": 2818452 - }, - { - "Position": { - "X": 616.9261, - "Y": -17.458832, - "Z": -435.18936 - }, - "TerritoryId": 1190, - "InteractionType": "WalkTo" - }, - { - "DataId": 2013961, - "Position": { - "X": 645.5939, - "Y": -11.7647705, - "Z": -417.65472 - }, - "TerritoryId": 1190, - "InteractionType": "AttuneAetherCurrent", - "AetherCurrentId": 2818456 - }, - { - "Position": { - "X": 659.8994, - "Y": -16.525915, - "Z": -173.6375 - }, - "TerritoryId": 1190, - "InteractionType": "WalkTo" - }, - { - "DataId": 2013963, - "Position": { - "X": 658.2893, - "Y": 21.011597, - "Z": 82.993774 - }, - "TerritoryId": 1190, - "InteractionType": "AttuneAetherCurrent", - "AetherCurrentId": 2818458 - }, - { - "Position": { - "X": 198.9425, - "Y": 6.210067, - "Z": -53.1092 - }, - "TerritoryId": 1190, - "InteractionType": "WalkTo" - }, - { - "DataId": 2013962, - "Position": { - "X": 183.88635, - "Y": 11.917236, - "Z": -59.342346 - }, - "TerritoryId": 1190, - "InteractionType": "AttuneAetherCurrent", - "AetherCurrentId": 2818457, - "DisableNavmesh": true - }, { "DataId": 1046988, "Position": { @@ -136,8 +64,7 @@ "Z": -514.6716 }, "TerritoryId": 1190, - "InteractionType": "Interact", - "AetheryteShortcut": "Shaaloani - Mehwahhetsoan" + "InteractionType": "Interact" } ] }, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4919_And the Land Would Tremble.json b/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4919_And the Land Would Tremble.json index 16c8605f..30d005a1 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4919_And the Land Would Tremble.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4919_And the Land Would Tremble.json @@ -52,6 +52,62 @@ { "Sequence": 3, "Steps": [ + { + "DataId": 1050655, + "Position": { + "X": 289.02112, + "Y": -15.566031, + "Z": -478.78235 + }, + "TerritoryId": 1190, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5138 + }, + { + "Position": { + "X": 386.84927, + "Y": -0.84392637, + "Z": 435.0579 + }, + "TerritoryId": 1190, + "InteractionType": "WalkTo", + "AetheryteShortcut": "Shaaloani - Hhusatahwi", + "SkipConditions": { + "StepIf": { + "QuestsCompleted": [ + 5140 + ] + }, + "AetheryteShortcutIf": { + "QuestsCompleted": [ + 5140 + ] + } + } + }, + { + "DataId": 1051283, + "Position": { + "X": 374.19702, + "Y": -0.24794838, + "Z": 437.2472 + }, + "StopDistance": 6, + "TerritoryId": 1190, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5140 + }, + { + "DataId": 1049324, + "Position": { + "X": -108.659546, + "Y": 4.055336, + "Z": 319.5697 + }, + "TerritoryId": 1190, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5130 + }, { "DataId": 1047001, "Position": { @@ -61,6 +117,7 @@ }, "TerritoryId": 1190, "InteractionType": "Interact", + "AetheryteShortcut": "Shaaloani - Sheshenewezi Springs", "DialogueChoices": [ { "Type": "YesNo", diff --git a/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4920_No Time for Tears.json b/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4920_No Time for Tears.json index 86985831..ff3a5000 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4920_No Time for Tears.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4920_No Time for Tears.json @@ -137,6 +137,15 @@ { "Sequence": 3, "Steps": [ + { + "Position": { + "X": -163.63573, + "Y": 45.171337, + "Z": 12.003954 + }, + "TerritoryId": 1185, + "InteractionType": "WalkTo" + }, { "DataId": 1047026, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4921_Pick up the Pieces.json b/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4921_Pick up the Pieces.json index bcace205..a5347bfe 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4921_Pick up the Pieces.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4921_Pick up the Pieces.json @@ -28,7 +28,7 @@ "Z": 25.680908 }, "TerritoryId": 1185, - "InteractionType": "WaitForManualProgress", + "InteractionType": "Snipe", "Comment": "Inspect Helm, Corpse, Weapon" } ] diff --git a/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4923_In Yyasulani's Shadow.json b/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4923_In Yyasulani's Shadow.json index edaedfc9..1bf3b839 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4923_In Yyasulani's Shadow.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4923_In Yyasulani's Shadow.json @@ -161,6 +161,17 @@ { "Sequence": 7, "Steps": [ + { + "DataId": 1051316, + "Position": { + "X": -380.30066, + "Y": 18.718708, + "Z": -114.24432 + }, + "TerritoryId": 1190, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5144 + }, { "DataId": 1047082, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4926_All Aboard.json b/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4926_All Aboard.json index ec258cb1..51a11987 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4926_All Aboard.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4926_All Aboard.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1198 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4932_Embracing Oblivion.json b/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4932_Embracing Oblivion.json index a039a85a..c7d81787 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4932_Embracing Oblivion.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4932_Embracing Oblivion.json @@ -55,7 +55,8 @@ "Z": 0.6866455 }, "TerritoryId": 1171, - "InteractionType": "Interact" + "InteractionType": "Interact", + "DelaySecondsAtStart": 3 } ] }, @@ -69,6 +70,7 @@ "Y": 0.003171, "Z": 1.296936 }, + "StopDistance": 5, "TerritoryId": 1171, "InteractionType": "CompleteQuest" } diff --git a/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4933_Solution Nine.json b/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4933_Solution Nine.json index 67d31b9b..747faf16 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4933_Solution Nine.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4933_Solution Nine.json @@ -21,6 +21,34 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1049443, + "Position": { + "X": -177.56934, + "Y": 29.999998, + "Z": -601.15967 + }, + "TerritoryId": 1191, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5153, + "AetheryteShortcut": "Heritage Found - The Outskirts", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + }, + { + "DataId": 1050805, + "Position": { + "X": -153.09375, + "Y": 34.946026, + "Z": -581.0178 + }, + "TerritoryId": 1191, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5160 + }, { "DataId": 1048053, "Position": { @@ -29,8 +57,7 @@ "Z": -828.58014 }, "TerritoryId": 1191, - "InteractionType": "Interact", - "AetheryteShortcut": "Heritage Found - The Outskirts" + "InteractionType": "Interact" } ] }, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4935_Her People, Her Family.json b/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4935_Her People, Her Family.json index 9de8ecae..033c1729 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4935_Her People, Her Family.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4935_Her People, Her Family.json @@ -44,12 +44,14 @@ "Z": -117.162285 }, "TerritoryId": 1186, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false }, { "TerritoryId": 1186, "InteractionType": "AttuneAethernetShard", - "AethernetShard": "[Solution Nine] Resolution" + "AethernetShard": "[Solution Nine] Resolution", + "DelaySecondsAtStart": 2 }, { "DataId": 1048073, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4936_Scales of Blue.json b/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4936_Scales of Blue.json index b80cade4..831ad356 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4936_Scales of Blue.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4936_Scales of Blue.json @@ -27,7 +27,8 @@ "Z": 5.1162424 }, "TerritoryId": 1186, - "InteractionType": "WalkTo" + "InteractionType": "WalkTo", + "RestartNavigationIfCancelled": false }, { "DataId": 1048172, @@ -37,7 +38,8 @@ "Z": 9.201172 }, "TerritoryId": 1186, - "InteractionType": "Interact" + "InteractionType": "Interact", + "DelaySecondsAtStart": 2 } ] }, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4941_At a Crossroads.json b/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4941_At a Crossroads.json index 08e1e1a9..b48c78ef 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4941_At a Crossroads.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4941_At a Crossroads.json @@ -37,6 +37,17 @@ { "Sequence": 2, "Steps": [ + { + "DataId": 1049505, + "Position": { + "X": -209.85736, + "Y": 7.49638, + "Z": 595.9104 + }, + "TerritoryId": 1191, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5159 + }, { "DataId": 1048099, "Position": { @@ -53,6 +64,17 @@ { "Sequence": 3, "Steps": [ + { + "DataId": 1049501, + "Position": { + "X": -592.7062, + "Y": -2.4803436, + "Z": -489.28055 + }, + "TerritoryId": 1191, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5156 + }, { "DataId": 1048116, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4942_The Protector and the Destroyer.json b/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4942_The Protector and the Destroyer.json index cb0a79af..b3c05e7d 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4942_The Protector and the Destroyer.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4942_The Protector and the Destroyer.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1213 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4945_The Resilient Son.json b/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4945_The Resilient Son.json index b912c8bd..8e967708 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4945_The Resilient Son.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4945_The Resilient Son.json @@ -1,10 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1200, - 1208 - ], "QuestSequence": [ { "Sequence": 0, @@ -32,7 +28,8 @@ "Z": -565.48413 }, "TerritoryId": 1191, - "InteractionType": "Interact" + "InteractionType": "Interact", + "Fly": true } ] }, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4951_The Land of Dreams.json b/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4951_The Land of Dreams.json index ae4ec158..15de1328 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4951_The Land of Dreams.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4951_The Land of Dreams.json @@ -21,6 +21,17 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1050617, + "Position": { + "X": -631.4031, + "Y": 2.9305653E-07, + "Z": 497.12354 + }, + "TerritoryId": 1192, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5174 + }, { "DataId": 1047884, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4953_The Sanctuary of the Strong.json b/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4953_The Sanctuary of the Strong.json index 3c29861a..5f5a5c57 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4953_The Sanctuary of the Strong.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4953_The Sanctuary of the Strong.json @@ -21,6 +21,41 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1048243, + "Position": { + "X": 57.87744, + "Y": 53.200012, + "Z": 772.03015 + }, + "TerritoryId": 1192, + "InteractionType": "Interact", + "AetheryteShortcut": "Living Memory - Leynode Mnemo", + "TargetTerritoryId": 1192, + "SkipConditions": { + "StepIf": { + "QuestsCompleted": [ + 5176 + ] + }, + "AetheryteShortcutIf": { + "QuestsCompleted": [ + 5176 + ] + } + } + }, + { + "DataId": 1050621, + "Position": { + "X": 477.1344, + "Y": -0.034497976, + "Z": 711.6654 + }, + "TerritoryId": 1192, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5176 + }, { "DataId": 1047917, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4956_An Explorer's Delight.json b/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4956_An Explorer's Delight.json index 146b118c..2c708162 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4956_An Explorer's Delight.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4956_An Explorer's Delight.json @@ -21,6 +21,44 @@ { "Sequence": 1, "Steps": [ + { + "DataId": 1050625, + "Position": { + "X": 628.6869, + "Y": 24.99949, + "Z": -283.3753 + }, + "TerritoryId": 1192, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5178, + "AetheryteShortcut": "Living Memory - Leynode Pyro", + "SkipConditions": { + "AetheryteShortcutIf": { + "QuestsCompleted": [ + 5178 + ] + } + } + }, + { + "DataId": 1050632, + "Position": { + "X": 538.9944, + "Y": 25.001822, + "Z": -194.3847 + }, + "TerritoryId": 1192, + "InteractionType": "AcceptQuest", + "PickUpQuestId": 5179, + "AetheryteShortcut": "Living Memory - Leynode Pyro", + "SkipConditions": { + "AetheryteShortcutIf": { + "QuestsCompleted": [ + 5179 + ] + } + } + }, { "DataId": 1047971, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4959_Dawntrail.json b/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4959_Dawntrail.json index 87c4c82b..778f11db 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4959_Dawntrail.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4959_Dawntrail.json @@ -1,10 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1199, - 1202 - ], "QuestSequence": [ { "Sequence": 0, @@ -34,7 +30,12 @@ "TerritoryId": 1192, "InteractionType": "WalkTo", "AetheryteShortcut": "Living Memory - Leynode Mnemo", - "$": "Leynode Mnemo to Meso Terminal waypoint" + "$": "Leynode Mnemo to Meso Terminal waypoint", + "SkipConditions": { + "StepIf": { + "Flying": "Unlocked" + } + } }, { "DataId": 1048014, @@ -44,7 +45,8 @@ "Z": 363.05774 }, "TerritoryId": 1192, - "InteractionType": "Interact" + "InteractionType": "Interact", + "Fly": true } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Raid Quests/4960_A New Challenger Appears.json b/QuestPaths/7.x - Dawntrail/Raid Quests/4960_A New Challenger Appears.json index f36d1d26..37d6b324 100644 --- a/QuestPaths/7.x - Dawntrail/Raid Quests/4960_A New Challenger Appears.json +++ b/QuestPaths/7.x - Dawntrail/Raid Quests/4960_A New Challenger Appears.json @@ -13,7 +13,17 @@ "Z": 231.37244 }, "TerritoryId": 1186, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Solution Nine", + "AethernetShortcut": [ + "[Solution Nine] Aetheryte Plaza", + "[Solution Nine] The Arcadion" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Raid Quests/4961_The Claw in the Dark.json b/QuestPaths/7.x - Dawntrail/Raid Quests/4961_The Claw in the Dark.json index e8f21737..d4ec0c27 100644 --- a/QuestPaths/7.x - Dawntrail/Raid Quests/4961_The Claw in the Dark.json +++ b/QuestPaths/7.x - Dawntrail/Raid Quests/4961_The Claw in the Dark.json @@ -1,13 +1,45 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1225 - ], "QuestSequence": [ { "Sequence": 0, "Steps": [ + { + "DataId": 1049793, + "Position": { + "X": 364.3396, + "Y": 60.125, + "Z": 357.1068 + }, + "TerritoryId": 1186, + "InteractionType": "Interact", + "AetheryteShortcut": "Solution Nine", + "AethernetShortcut": [ + "[Solution Nine] Aetheryte Plaza", + "[Solution Nine] The Arcadion" + ], + "TargetTerritoryId": 1224, + "SkipConditions": { + "AetheryteShortcutIf": { + "InTerritory": [1224] + }, + "StepIf": { + "NearPosition": { + "Position": { + "X": 1.6021729, + "Y": 0, + "Z": -6.088379 + }, + "MaximumDistance": 100, + "TerritoryId": 1224 + }, + "InTerritory": [ + 1224 + ] + } + } + }, { "DataId": 1049788, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/Raid Quests/4962_Sweet Poison.json b/QuestPaths/7.x - Dawntrail/Raid Quests/4962_Sweet Poison.json index 0073030d..408d87c9 100644 --- a/QuestPaths/7.x - Dawntrail/Raid Quests/4962_Sweet Poison.json +++ b/QuestPaths/7.x - Dawntrail/Raid Quests/4962_Sweet Poison.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1227 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/7.x - Dawntrail/Raid Quests/4963_Yaana's Yarn.json b/QuestPaths/7.x - Dawntrail/Raid Quests/4963_Yaana's Yarn.json index e890b43e..ed2b9b8c 100644 --- a/QuestPaths/7.x - Dawntrail/Raid Quests/4963_Yaana's Yarn.json +++ b/QuestPaths/7.x - Dawntrail/Raid Quests/4963_Yaana's Yarn.json @@ -37,6 +37,21 @@ { "Sequence": 255, "Steps": [ + { + "DataId": 1049793, + "Position": { + "X": 364.3396, + "Y": 60.125, + "Z": 357.1068 + }, + "TerritoryId": 1186, + "InteractionType": "Interact", + "TargetTerritoryId": 1224, + "AethernetShortcut": [ + "[Solution Nine] True Vue", + "[Solution Nine] The Arcadion" + ] + }, { "DataId": 1049789, "Position": { diff --git a/QuestPaths/7.x - Dawntrail/Raid Quests/4964_Vile Heat.json b/QuestPaths/7.x - Dawntrail/Raid Quests/4964_Vile Heat.json index ade86865..d593ae59 100644 --- a/QuestPaths/7.x - Dawntrail/Raid Quests/4964_Vile Heat.json +++ b/QuestPaths/7.x - Dawntrail/Raid Quests/4964_Vile Heat.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1229 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/7.x - Dawntrail/Raid Quests/4965_The Neoteric Witch.json b/QuestPaths/7.x - Dawntrail/Raid Quests/4965_The Neoteric Witch.json index a4fef371..b764b27c 100644 --- a/QuestPaths/7.x - Dawntrail/Raid Quests/4965_The Neoteric Witch.json +++ b/QuestPaths/7.x - Dawntrail/Raid Quests/4965_The Neoteric Witch.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1231 - ], "QuestSequence": [ { "Sequence": 0, diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4842_Power Forgotten.json b/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4842_Power Forgotten.json index 33df55b7..c04f2dc7 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4842_Power Forgotten.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4842_Power Forgotten.json @@ -13,7 +13,13 @@ "Z": 194.72034 }, "TerritoryId": 1185, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Tuliyollal", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4843_A Brand of Justice.json b/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4843_A Brand of Justice.json index 6b6425ea..a26a9fca 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4843_A Brand of Justice.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4843_A Brand of Justice.json @@ -13,7 +13,13 @@ "Z": 628.3817 }, "TerritoryId": 957, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Thavnair - Yedlihmad", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4844_The Seeds of Popularity.json b/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4844_The Seeds of Popularity.json index 40af8b55..5542bd4b 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4844_The Seeds of Popularity.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4844_The Seeds of Popularity.json @@ -13,7 +13,13 @@ "Z": 628.3817 }, "TerritoryId": 957, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Thavnair - Yedlihmad", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4845_Floundering Fame.json b/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4845_Floundering Fame.json index cbe6d957..0150bd00 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4845_Floundering Fame.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4845_Floundering Fame.json @@ -14,6 +14,12 @@ }, "TerritoryId": 957, "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Thavnair - Yedlihmad", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, "DialogueChoices": [ { "Type": "List", diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4846_Behind the Helm.json b/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4846_Behind the Helm.json index 9b581e94..49373025 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4846_Behind the Helm.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4846_Behind the Helm.json @@ -13,7 +13,13 @@ "Z": 628.3817 }, "TerritoryId": 957, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Thavnair - Yedlihmad", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4847_Heroes and Pretenders.json b/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4847_Heroes and Pretenders.json index feff8b34..765794c0 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4847_Heroes and Pretenders.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Magical Ranged/4847_Heroes and Pretenders.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1218 - ], "QuestSequence": [ { "Sequence": 0, @@ -16,7 +13,13 @@ "Z": 628.3817 }, "TerritoryId": 957, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Thavnair - Yedlihmad", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Physical Ranged/4838_Take Me to Your Leader.json b/QuestPaths/7.x - Dawntrail/Role Quests/Physical Ranged/4838_Take Me to Your Leader.json index ed65c14d..9fd43410 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Physical Ranged/4838_Take Me to Your Leader.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Physical Ranged/4838_Take Me to Your Leader.json @@ -13,7 +13,13 @@ "Z": -3.6469727 }, "TerritoryId": 621, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Lochs - Porta Praetoria", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Physical Ranged/4839_The Milk of Mamool Ja Kindness.json b/QuestPaths/7.x - Dawntrail/Role Quests/Physical Ranged/4839_The Milk of Mamool Ja Kindness.json index 90b8d6de..e51f3ef2 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Physical Ranged/4839_The Milk of Mamool Ja Kindness.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Physical Ranged/4839_The Milk of Mamool Ja Kindness.json @@ -13,7 +13,13 @@ "Z": 739.4979 }, "TerritoryId": 620, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Peaks - Ala Ghiri", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Physical Ranged/4840_Ally in the Alley.json b/QuestPaths/7.x - Dawntrail/Role Quests/Physical Ranged/4840_Ally in the Alley.json index d73e1be9..0e23cedd 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Physical Ranged/4840_Ally in the Alley.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Physical Ranged/4840_Ally in the Alley.json @@ -13,7 +13,13 @@ "Z": 739.4979 }, "TerritoryId": 620, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Peaks - Ala Ghiri", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Physical Ranged/4841_The Mightiest Shield.json b/QuestPaths/7.x - Dawntrail/Role Quests/Physical Ranged/4841_The Mightiest Shield.json index cba86057..20380ed1 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Physical Ranged/4841_The Mightiest Shield.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Physical Ranged/4841_The Mightiest Shield.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1217 - ], "QuestSequence": [ { "Sequence": 0, @@ -16,7 +13,13 @@ "Z": 618.09717 }, "TerritoryId": 621, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Lochs - Ala Mhigan Quarter", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4818_The Narwhal Beckons.json b/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4818_The Narwhal Beckons.json index ab8d951a..960d2233 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4818_The Narwhal Beckons.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4818_The Narwhal Beckons.json @@ -13,7 +13,13 @@ "Z": 203.14331 }, "TerritoryId": 1185, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Tuliyollal", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4819_Sleepless in Ishgard.json b/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4819_Sleepless in Ishgard.json index 69caf918..668b23af 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4819_Sleepless in Ishgard.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4819_Sleepless in Ishgard.json @@ -13,7 +13,13 @@ "Z": -48.05072 }, "TerritoryId": 418, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ishgard", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4820_Between Sleep and Death.json b/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4820_Between Sleep and Death.json index 09bfe8e2..9b08c1c9 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4820_Between Sleep and Death.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4820_Between Sleep and Death.json @@ -14,6 +14,12 @@ }, "TerritoryId": 418, "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ishgard", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, "DialogueChoices": [ { "Type": "List", diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4821_Beacon in the Darkness.json b/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4821_Beacon in the Darkness.json index 67f58ebb..4691ec7c 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4821_Beacon in the Darkness.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4821_Beacon in the Darkness.json @@ -13,7 +13,13 @@ "Z": -1.7243042 }, "TerritoryId": 418, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ishgard", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4822_Awakened, not Stirred.json b/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4822_Awakened, not Stirred.json index 544b366f..a29c5a66 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4822_Awakened, not Stirred.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4822_Awakened, not Stirred.json @@ -14,7 +14,13 @@ }, "StopDistance": 5, "TerritoryId": 418, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ishgard", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4823_Dreams of a New Day.json b/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4823_Dreams of a New Day.json index 1fe65e91..4f05b345 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4823_Dreams of a New Day.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Tank/4823_Dreams of a New Day.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1214 - ], "QuestSequence": [ { "Sequence": 0, @@ -16,7 +13,13 @@ "Z": -48.17273 }, "TerritoryId": 418, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Ishgard", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/7.x - Dawntrail/Seasonal Events/Moonfire Faire (2024)/5182_Fire Red, Beast Green.json b/QuestPaths/7.x - Dawntrail/Seasonal Events/Moonfire Faire (2024)/5182_Fire Red, Beast Green.json index 9125f550..b99f6929 100644 --- a/QuestPaths/7.x - Dawntrail/Seasonal Events/Moonfire Faire (2024)/5182_Fire Red, Beast Green.json +++ b/QuestPaths/7.x - Dawntrail/Seasonal Events/Moonfire Faire (2024)/5182_Fire Red, Beast Green.json @@ -49,7 +49,9 @@ "SkipConditions": { "StepIf": { "AetheryteUnlocked": "Eastern La Noscea - Costa Del Sol", - "InTerritory": [137] + "InTerritory": [ + 137 + ] }, "AethernetShortcutIf": { "AetheryteUnlocked": "Eastern La Noscea - Costa Del Sol" diff --git a/QuestPaths/7.x - Dawntrail/Seasonal Events/Rising (2024)/5015_Rising to the Call.json b/QuestPaths/7.x - Dawntrail/Seasonal Events/Rising (2024)/5015_Rising to the Call.json new file mode 100644 index 00000000..dc0b144b --- /dev/null +++ b/QuestPaths/7.x - Dawntrail/Seasonal Events/Rising (2024)/5015_Rising to the Call.json @@ -0,0 +1,188 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1050998, + "Position": { + "X": 4.0131226, + "Y": 44.499996, + "Z": 126.17676 + }, + "TerritoryId": 128, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] The Aftcastle" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 128 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1050999, + "Position": { + "X": 4.837097, + "Y": 31.47563, + "Z": -256.97723 + }, + "TerritoryId": 128, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Limsa Lominsa] The Aftcastle", + "[Limsa Lominsa] Marauders' Guild" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1051000, + "Position": { + "X": -100.175476, + "Y": 18.00033, + "Z": -15.030151 + }, + "TerritoryId": 129, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Limsa Lominsa] Marauders' Guild", + "[Limsa Lominsa] Aetheryte Plaza" + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1001217, + "Position": { + "X": -140.85602, + "Y": 18.199999, + "Z": 17.013733 + }, + "TerritoryId": 129, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] + }, + { + "DataId": 1051003, + "Position": { + "X": -188.12854, + "Y": 16, + "Z": 33.37146 + }, + "TerritoryId": 129, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] + }, + { + "DataId": 1051002, + "Position": { + "X": -205.005, + "Y": 15.999994, + "Z": 71.97681 + }, + "TerritoryId": 129, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] + }, + { + "DataId": 1051004, + "Position": { + "X": -243.03046, + "Y": 16.199997, + "Z": 40.97046 + }, + "TerritoryId": 129, + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 2014209, + "Position": { + "X": -385.1225, + "Y": 5.996765, + "Z": 33.707153 + }, + "TerritoryId": 129, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Limsa Lominsa] Hawkers' Alley", + "[Limsa Lominsa] Arcanists' Guild" + ] + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1051001, + "Position": { + "X": 3.7994385, + "Y": 44.499992, + "Z": 126.05469 + }, + "TerritoryId": 128, + "InteractionType": "CompleteQuest", + "AethernetShortcut": [ + "[Limsa Lominsa] Arcanists' Guild", + "[Limsa Lominsa] The Aftcastle" + ], + "NextQuestId": 5016 + } + ] + } + ] +} diff --git a/QuestPaths/7.x - Dawntrail/Seasonal Events/Rising (2024)/5016_We Who Are About to Set Sail Salute You.json b/QuestPaths/7.x - Dawntrail/Seasonal Events/Rising (2024)/5016_We Who Are About to Set Sail Salute You.json new file mode 100644 index 00000000..3d92545a --- /dev/null +++ b/QuestPaths/7.x - Dawntrail/Seasonal Events/Rising (2024)/5016_We Who Are About to Set Sail Salute You.json @@ -0,0 +1,128 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1051007, + "Position": { + "X": 2.2735596, + "Y": 44.499992, + "Z": 125.200195 + }, + "StopDistance": 5, + "TerritoryId": 128, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "AethernetShortcut": [ + "[Limsa Lominsa] Aetheryte Plaza", + "[Limsa Lominsa] The Aftcastle" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true, + "InTerritory": [ + 128 + ] + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1051008, + "Position": { + "X": 2.5481567, + "Y": 43.999977, + "Z": -206.71399 + }, + "TerritoryId": 128, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Limsa Lominsa] The Aftcastle", + "[Limsa Lominsa] Marauders' Guild" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1051009, + "Position": { + "X": 1.5106201, + "Y": 44, + "Z": -205.8595 + }, + "TerritoryId": 128, + "InteractionType": "Interact", + "StopDistance": 5 + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 2014210, + "Position": { + "X": -176.62323, + "Y": 40.97046, + "Z": 185.35132 + }, + "TerritoryId": 128, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Limsa Lominsa] Marauders' Guild", + "[Limsa Lominsa] The Aftcastle" + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1051010, + "Position": { + "X": -178.11859, + "Y": 40.999958, + "Z": 184.67993 + }, + "StopDistance": 5, + "TerritoryId": 128, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1051011, + "Position": { + "X": -178.63745, + "Y": 40.999916, + "Z": 186.3584 + }, + "StopDistance": 7, + "TerritoryId": 128, + "InteractionType": "CompleteQuest", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_FESANX002_05016_Q52_000_082", + "Yes": true + } + ] + } + ] + } + ] +} diff --git a/QuestPaths/7.x - Dawntrail/Side Quests/Shaaloani/5126_A Refined Perspective.json b/QuestPaths/7.x - Dawntrail/Side Quests/Shaaloani/5126_A Refined Perspective.json index 4412991d..31d97375 100644 --- a/QuestPaths/7.x - Dawntrail/Side Quests/Shaaloani/5126_A Refined Perspective.json +++ b/QuestPaths/7.x - Dawntrail/Side Quests/Shaaloani/5126_A Refined Perspective.json @@ -28,7 +28,7 @@ "Z": -141.92426 }, "TerritoryId": 1190, - "InteractionType": "Instruction", + "InteractionType": "Snipe", "Comment": "Click (from left to right) pump, middle of the connecting pipes, barrels" } ] diff --git a/QuestPaths/7.x - Dawntrail/Side Quests/Yak T'el/5100_Carved in Stone.json b/QuestPaths/7.x - Dawntrail/Side Quests/Yak T'el/5100_Carved in Stone.json index b50e254d..2244ebb9 100644 --- a/QuestPaths/7.x - Dawntrail/Side Quests/Yak T'el/5100_Carved in Stone.json +++ b/QuestPaths/7.x - Dawntrail/Side Quests/Yak T'el/5100_Carved in Stone.json @@ -28,7 +28,7 @@ "Z": 557.7018 }, "TerritoryId": 1189, - "InteractionType": "Instruction", + "InteractionType": "Snipe", "Comment": "Inspect Flag, Red Head, Blue Head" } ] diff --git a/QuestPaths/7.x - Dawntrail/Unlocks/Dungeons/5013_It Belongs in a Museum.json b/QuestPaths/7.x - Dawntrail/Unlocks/Dungeons/5013_It Belongs in a Museum.json index 1126461b..24c962b3 100644 --- a/QuestPaths/7.x - Dawntrail/Unlocks/Dungeons/5013_It Belongs in a Museum.json +++ b/QuestPaths/7.x - Dawntrail/Unlocks/Dungeons/5013_It Belongs in a Museum.json @@ -13,7 +13,13 @@ "Z": 75.66943 }, "TerritoryId": 1185, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Tuliyollal", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, @@ -77,7 +83,12 @@ }, "TerritoryId": 1187, "InteractionType": "Interact", - "AetheryteShortcut": "Urqopacha - Worlar's Echo" + "AetheryteShortcut": "Urqopacha - Worlar's Echo", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, @@ -92,7 +103,14 @@ "Z": 145.00647 }, "TerritoryId": 1187, - "InteractionType": "CompleteQuest" + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Urqopacha - Worlar's Echo", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] } diff --git a/QuestPaths/7.x - Dawntrail/Unlocks/Dungeons/5014_Something Stray in the Neighborhood.json b/QuestPaths/7.x - Dawntrail/Unlocks/Dungeons/5014_Something Stray in the Neighborhood.json index 891a4744..0e421d58 100644 --- a/QuestPaths/7.x - Dawntrail/Unlocks/Dungeons/5014_Something Stray in the Neighborhood.json +++ b/QuestPaths/7.x - Dawntrail/Unlocks/Dungeons/5014_Something Stray in the Neighborhood.json @@ -1,9 +1,6 @@ { "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "Author": "liza", - "TerritoryBlacklist": [ - 1204 - ], "QuestSequence": [ { "Sequence": 0, @@ -16,7 +13,17 @@ "Z": 198.07727 }, "TerritoryId": 1186, - "InteractionType": "AcceptQuest" + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Solution Nine", + "AethernetShortcut": [ + "[Solution Nine] Aetheryte Plaza", + "[Solution Nine] Neon Stein" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, @@ -31,7 +38,13 @@ "Z": 761.68445 }, "TerritoryId": 1192, - "InteractionType": "Interact" + "InteractionType": "Interact", + "AetheryteShortcut": "Living Memory - Leynode Mnemo", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, @@ -63,7 +76,13 @@ }, "TerritoryId": 1192, "InteractionType": "Interact", - "Fly": true + "Fly": true, + "AetheryteShortcut": "Living Memory - Leynode Mnemo", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, @@ -90,7 +109,13 @@ "StopDistance": 7, "TerritoryId": 1192, "InteractionType": "Interact", - "Fly": true + "Fly": true, + "AetheryteShortcut": "Living Memory - Leynode Mnemo", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } } ] }, diff --git a/QuestPaths/Reusable Paths.md b/QuestPaths/Reusable Paths.md index fca80551..e8b217ef 100644 --- a/QuestPaths/Reusable Paths.md +++ b/QuestPaths/Reusable Paths.md @@ -77,6 +77,52 @@ Horizon side of the gate: } ``` +```json + { + "Position": { + "X": -421.5105, + "Y": 218.1, + "Z": -297.2496 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (bottom)" + }, + { + "Position": { + "X": -421.45218, + "Y": 221.5, + "Z": -287.28427 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (middle/bottom)", + "DisableNavmesh": true + }, + { + "Position": { + "X": -417.70758, + "Y": 221.5, + "Z": -287.7873 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (middle/top)", + "DisableNavmesh": true + }, + { + "Position": { + "X": -417.37885, + "Y": 224.99997, + "Z": -295.45523 + }, + "TerritoryId": 155, + "InteractionType": "WalkTo", + "Comment": "North Whitebrim, Stairs (top)", + "DisableNavmesh": true + } +``` + ## Coerthas Western Highlands ```json diff --git a/QuestPaths/packages.lock.json b/QuestPaths/packages.lock.json index 408e267a..d46a7a0e 100644 --- a/QuestPaths/packages.lock.json +++ b/QuestPaths/packages.lock.json @@ -2,23 +2,15 @@ "version": 1, "dependencies": { "net8.0-windows7.0": { - "System.Text.Encodings.Web": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "yev/k9GHAEGx2Rg3/tU6MQh4HGBXJs70y7j1LaM1i/ER9po+6nnQ6RRqTJn1E7Xu0fbIFK80Nh5EoODxrbxwBQ==" - }, "System.Text.Json": { "type": "Transitive", - "resolved": "8.0.4", - "contentHash": "bAkhgDJ88XTsqczoxEMliSrpijKZHhbJQldhAmObj/RbrN3sU5dcokuXmWJWsdQAhiMJ9bTayWsL1C9fbbCRhw==", - "dependencies": { - "System.Text.Encodings.Web": "8.0.0" - } + "resolved": "8.0.5", + "contentHash": "0f1B50Ss7rqxXiaBJyzUu9bWFOO2/zSlifZ/UNMdiIpDYe4cY4LQQicP4nirK1OS31I43rn062UIJ1Q9bpmHpg==" }, "questionable.model": { "type": "Project", "dependencies": { - "System.Text.Json": "[8.0.4, )" + "System.Text.Json": "[8.0.5, )" } } } diff --git a/QuestPaths/quest-v1.json b/QuestPaths/quest-v1.json index 0a3be732..eefbf1eb 100644 --- a/QuestPaths/quest-v1.json +++ b/QuestPaths/quest-v1.json @@ -29,12 +29,6 @@ "type": "string", "description": "Dev Comment (not visible in-game)" }, - "TerritoryBlacklist": { - "type": "array", - "items": { - "type": "integer" - } - }, "QuestSequence": { "type": "array", "items": { @@ -92,6 +86,10 @@ "type": "boolean", "description": "Most interactions with objects are checked for a Y (height) difference of 2 in-game units. If set to true, the game won't attempt to get any closer if the height difference is larger than this." }, + "RestartNavigationIfCancelled": { + "type": "boolean", + "description": "For some specific loading screen transitions (e.g. when entering/leaving the water through the portals in the ruby sea), setting this to 'false' means it won't re-attempt to move to the portal after the loading animation" + }, "TerritoryId": { "type": "integer", "description": "The territory id associated with the location", @@ -115,6 +113,7 @@ "Combat", "UseItem", "EquipItem", + "PurchaseItem", "EquipRecommended", "Say", "Emote", @@ -126,6 +125,8 @@ "Jump", "Dive", "Craft", + "Gather", + "Snipe", "Instruction", "AcceptQuest", "CompleteQuest", @@ -234,13 +235,25 @@ "QuestsAccepted": { "type": "array", "items": { - "type": "number" + "type": [ + "number", + "string" + ] } }, "QuestsCompleted": { "type": "array", "items": { - "type": "number" + "type": [ + "number", + "string" + ] + } + }, + "NotNamePlateIconId": { + "type": "array", + "items": { + "type": "integer" } }, "AetheryteLocked": { @@ -257,11 +270,15 @@ }, "MaximumDistance": { "type": "number" + }, + "TerritoryId": { + "type": "number" } }, "required": [ "Position", - "MaximumDistance" + "MaximumDistance", + "TerritoryId" ], "additionalProperties": false }, @@ -290,6 +307,24 @@ "type": "integer" } }, + "QuestsAccepted": { + "type": "array", + "items": { + "type": [ + "number", + "string" + ] + } + }, + "QuestsCompleted": { + "type": "array", + "items": { + "type": [ + "number", + "string" + ] + } + }, "AetheryteLocked": { "$ref": "https://git.carvel.li/liza/Questionable/raw/branch/master/Questionable.Model/common-schema.json#/$defs/Aetheryte" }, @@ -307,11 +342,15 @@ }, "MaximumDistance": { "type": "number" + }, + "TerritoryId": { + "type": "number" } }, "required": [ "Position", - "MaximumDistance" + "MaximumDistance", + "TerritoryId" ], "additionalProperties": false } @@ -380,41 +419,6 @@ } } }, - "RequiredGatheredItems": { - "type": "array", - "items": { - "type": "object", - "properties": { - "ItemId": { - "type": "number" - }, - "AlternativeItemId": { - "description": "For leves that allow you to gather two items with different chance percentage, this is the preferred item if the gathering chance is 100% (after buffs)", - "type": "number" - }, - "ItemCount": { - "type": "number", - "exclusiveMinimum": 0 - }, - "Collectability": { - "type": "number", - "minimum": 0, - "maximum": 1000 - }, - "QuestAcceptedAsClass": { - "type": "string", - "enum": [ - "Miner", - "Botanist" - ] - } - }, - "required": [ - "ItemId", - "ItemCount" - ] - } - }, "DelaySecondsAtStart": { "description": "Time to wait before starting", "type": [ @@ -568,7 +572,10 @@ "AutoOnEnterArea", "AfterInteraction", "AfterItemUse", - "OverworldEnemies" + "AfterAction", + "AfterEmote", + "OverworldEnemies", + "FateEnemies" ] }, "KillEnemyDataIds": { @@ -610,6 +617,29 @@ ] } }, + "CombatItemUse": { + "description": "Unlike the 'AfterItemUse' condition that is used for spawning an enemy in the first place, interacting with an item at a certain stage of combat is required", + "type": "object", + "properties": { + "ItemId": { + "type": "integer" + }, + "Condition": { + "type": "string", + "enum": [ + "Incapacitated", + "Health%" + ] + }, + "Value": { + "type": "integer" + } + }, + "required": [ + "ItemId", + "Condition" + ] + }, "CombatDelaySecondsAtStart": { "type": "number" } @@ -702,6 +732,44 @@ ] } }, + { + "if": { + "properties": { + "InteractionType": { + "const": "PurchaseItem" + } + } + }, + "then": { + "properties": { + "ItemCount": { + "type": "integer" + }, + "PurchaseMenu": { + "type": "object", + "description": "The text to use with /say", + "properties": { + "ExcelSheet": { + "type": "string" + }, + "Key": { + "type": [ + "string", + "integer" + ] + } + }, + "required": [ + "Key" + ] + } + }, + "required": [ + "ItemId", + "ItemCount" + ] + } + }, { "if": { "properties": { @@ -753,7 +821,12 @@ "bow", "uchiwasshoi", "clap", - "victorypose" + "victorypose", + "comfort", + "battlestance", + "doze", + "box", + "sundropdance" ] } } @@ -838,13 +911,27 @@ "description": "The action to use", "enum": [ "Heavy Swing", + "Bootshine", + "Twin Snakes", + "Demolish", + "Dragon Kick", + "Heavy Shot", "Cure", + "Cure II", + "Eukrasia", + "Diagnosis", + "Eukrasian Diagnosis", "Esuna", "Physick", + "Aspected Benefic", + "Form Shift", "Buffet (Sanuwa)", "Buffet (Griffin)", + "Trample", "Fumigate", + "Inhale", "Siphon Snout", + "Peculiar Light", "Cannonfire", "Red Gulal", "Yellow Gulal", @@ -983,6 +1070,9 @@ "integer" ] }, + "PromptIsRegularExpression": { + "type": "boolean" + }, "Yes": { "type": "boolean", "default": true @@ -1011,11 +1101,17 @@ "null" ] }, + "PromptIsRegularExpression": { + "type": "boolean" + }, "Answer": { "type": [ "string", "integer" ] + }, + "AnswerIsRegularExpression": { + "type": "boolean" } }, "required": [ @@ -1150,17 +1246,84 @@ "ItemCount" ] } - } - ], - "not": { - "anyOf": [ - { + }, + { + "if": { + "properties": { + "InteractionType": { + "const": "Gather" + } + } + }, + "then": { + "properties": { + "ItemsToGather": { + "type": "array", + "description": "Unlike crafting steps, which will always craft a single item id regardless of class, this allows for gathering different items depending on whether you've picked the quest up as miner or botanist", + "items": { + "type": "object", + "properties": { + "ItemId": { + "type": "number" + }, + "AlternativeItemId": { + "description": "For leves that allow you to gather two items with different chance percentage, this is the preferred item if the gathering chance is 100% (after buffs)", + "type": "number" + }, + "ItemCount": { + "type": "number", + "exclusiveMinimum": 0 + }, + "Collectability": { + "type": "number", + "minimum": 0, + "maximum": 1000 + }, + "QuestAcceptedAsClass": { + "type": "string", + "enum": [ + "Miner", + "Botanist" + ] + } + }, + "required": [ + "ItemId", + "ItemCount" + ] + } + } + }, "required": [ - "SkipIf" + "ItemsToGather" ] } - ] - } + }, + { + "if": { + "properties": { + "InteractionType": { + "anyOf": [ + { + "const": "WaitForManualProgress" + }, + { + "const": "Instruction" + }, + { + "const": "Snipe" + } + ] + } + } + }, + "then": { + "required": [ + "Comment" + ] + } + } + ] } } } diff --git a/Questionable.Model/Common/Converter/AetheryteConverter.cs b/Questionable.Model/Common/Converter/AetheryteConverter.cs index 0cecd3ea..36853586 100644 --- a/Questionable.Model/Common/Converter/AetheryteConverter.cs +++ b/Questionable.Model/Common/Converter/AetheryteConverter.cs @@ -35,8 +35,8 @@ public sealed class AetheryteConverter() : EnumConverter(Val { EAetheryteLocation.CoerthasCentralHighlandsCampDragonhead, "Coerthas Central Highlands - Camp Dragonhead" }, { EAetheryteLocation.MorDhona, "Mor Dhona" }, - { EAetheryteLocation.GoldSaucer, "Gold Saucer" }, { EAetheryteLocation.WolvesDenPier, "Wolves' Den Pier" }, + { EAetheryteLocation.GoldSaucer, "Gold Saucer" }, { EAetheryteLocation.Ishgard, "Ishgard" }, { EAetheryteLocation.Idyllshire, "Idyllshire" }, diff --git a/Questionable.Model/Common/EAetheryteLocation.cs b/Questionable.Model/Common/EAetheryteLocation.cs index a2dc3e2d..11738206 100644 --- a/Questionable.Model/Common/EAetheryteLocation.cs +++ b/Questionable.Model/Common/EAetheryteLocation.cs @@ -72,9 +72,18 @@ public enum EAetheryteLocation CoerthasCentralHighlandsCampDragonhead = 23, MorDhona = 24, - GoldSaucer = 62, WolvesDenPier = 55, + GoldSaucer = 62, + GoldSaucerEntranceCardSquares = 63, + GoldSaucerWonderSquareEast = 64, + GoldSaucerWonderSquareWest = 65, + GoldSaucerEventSquare = 66, + GoldSaucerCactpotBoard = 67, + GoldSaucerRoundSquare = 68, + GoldSaucerChocoboSquare = 69, + GoldSaucerMinionSquare = 89, + Ishgard = 70, IshgardForgottenKnight = 80, IshgardSkysteelManufactory = 81, @@ -147,6 +156,7 @@ public enum EAetheryteLocation DomanEnclaveSouthern = 130, DomanEnclaveOneRiver = 131, DomanEnclaveDocks = 162, + DomanEnclaveGangos = 163, Crystarium = 133, CrystariumMarkets = 149, diff --git a/Questionable.Model/Questing/CombatItemUse.cs b/Questionable.Model/Questing/CombatItemUse.cs new file mode 100644 index 00000000..565a0c77 --- /dev/null +++ b/Questionable.Model/Questing/CombatItemUse.cs @@ -0,0 +1,14 @@ +using System.Text.Json.Serialization; +using Questionable.Model.Questing.Converter; + +namespace Questionable.Model.Questing; + +public sealed class CombatItemUse +{ + public uint ItemId { get; set; } + + [JsonConverter(typeof(CombatItemUseConditionConverter))] + public ECombatItemUseCondition Condition { get; set; } + + public int Value { get; set; } +} diff --git a/Questionable.Model/Questing/Converter/ActionConverter.cs b/Questionable.Model/Questing/Converter/ActionConverter.cs index 5410e44b..6f0be40e 100644 --- a/Questionable.Model/Questing/Converter/ActionConverter.cs +++ b/Questionable.Model/Questing/Converter/ActionConverter.cs @@ -8,13 +8,27 @@ public sealed class ActionConverter() : EnumConverter(Values) private static readonly Dictionary Values = new() { { EAction.HeavySwing, "Heavy Swing" }, + { EAction.Bootshine, "Bootshine" }, + { EAction.TwinSnakes, "Twin Snakes" }, + { EAction.Demolish, "Demolish" }, + { EAction.DragonKick, "Dragon Kick" }, + { EAction.HeavyShot, "Heavy Shot" }, { EAction.Cure, "Cure" }, + { EAction.Cure2, "Cure II" }, + { EAction.Eukrasia, "Eukrasia" }, + { EAction.Diagnosis, "Diagnosis" }, + { EAction.EukrasianDiagnosis, "Eukrasian Diagnosis" }, { EAction.Esuna, "Esuna" }, { EAction.Physick, "Physick" }, + { EAction.AspectedBenefic, "Aspected Benefic" }, + { EAction.FormShift, "Form Shift" }, { EAction.BuffetSanuwa, "Buffet (Sanuwa)" }, { EAction.BuffetGriffin, "Buffet (Griffin)" }, + { EAction.Trample, "Trample" }, { EAction.Fumigate, "Fumigate" }, + { EAction.Inhale, "Inhale" }, { EAction.SiphonSnout, "Siphon Snout" }, + { EAction.PeculiarLight, "Peculiar Light" }, { EAction.Cannonfire, "Cannonfire" }, { EAction.RedGulal, "Red Gulal" }, { EAction.YellowGulal, "Yellow Gulal" }, diff --git a/Questionable.Model/Questing/Converter/AethernetShardConverter.cs b/Questionable.Model/Questing/Converter/AethernetShardConverter.cs index 6b5e5834..e75b3ad0 100644 --- a/Questionable.Model/Questing/Converter/AethernetShardConverter.cs +++ b/Questionable.Model/Questing/Converter/AethernetShardConverter.cs @@ -46,6 +46,16 @@ public sealed class AethernetShardConverter() : EnumConverter(Values) +{ + private static readonly Dictionary Values = new() + { + { ECombatItemUseCondition.Incapacitated, "Incapacitated" }, + { ECombatItemUseCondition.HealthPercent, "Health%" }, + }; +} diff --git a/Questionable.Model/Questing/Converter/ElementIdListConverter.cs b/Questionable.Model/Questing/Converter/ElementIdListConverter.cs new file mode 100644 index 00000000..25dd688d --- /dev/null +++ b/Questionable.Model/Questing/Converter/ElementIdListConverter.cs @@ -0,0 +1,36 @@ +using System; +using System.Collections.Generic; +using System.Text.Json; +using System.Text.Json.Serialization; + +namespace Questionable.Model.Questing.Converter; + +public sealed class ElementIdListConverter : JsonConverter> +{ + public override List Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) + { + if (reader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + reader.Read(); + + List values = []; + while (reader.TokenType != JsonTokenType.EndArray) + { + + if (reader.TokenType == JsonTokenType.Number) + values.Add(new QuestId(reader.GetUInt16())); + else + values.Add(ElementId.FromString(reader.GetString() ?? throw new JsonException())); + + reader.Read(); + } + + return values; + } + + public override void Write(Utf8JsonWriter writer, List value, JsonSerializerOptions options) + { + throw new NotImplementedException(); + } +} diff --git a/Questionable.Model/Questing/Converter/EmoteConverter.cs b/Questionable.Model/Questing/Converter/EmoteConverter.cs index e6080ce0..213d909a 100644 --- a/Questionable.Model/Questing/Converter/EmoteConverter.cs +++ b/Questionable.Model/Questing/Converter/EmoteConverter.cs @@ -32,5 +32,10 @@ public sealed class EmoteConverter() : EnumConverter(Values) { EEmote.Uchiwasshoi, "uchiwasshoi" }, { EEmote.Clap, "clap" }, { EEmote.VictoryPose, "victorypose" }, + { EEmote.Comfort, "comfort" }, + { EEmote.BattleStance, "battlestance" }, + { EEmote.Doze, "doze" }, + { EEmote.Box, "box" }, + { EEmote.SundropDance, "sundropdance"} }; } diff --git a/Questionable.Model/Questing/Converter/EnemySpawnTypeConverter.cs b/Questionable.Model/Questing/Converter/EnemySpawnTypeConverter.cs index e97faa4f..1b43eaf4 100644 --- a/Questionable.Model/Questing/Converter/EnemySpawnTypeConverter.cs +++ b/Questionable.Model/Questing/Converter/EnemySpawnTypeConverter.cs @@ -9,7 +9,10 @@ public sealed class EnemySpawnTypeConverter() : EnumConverter(V { { EEnemySpawnType.AfterInteraction, "AfterInteraction" }, { EEnemySpawnType.AfterItemUse, "AfterItemUse" }, + { EEnemySpawnType.AfterAction, "AfterAction" }, + { EEnemySpawnType.AfterEmote, "AfterEmote" }, { EEnemySpawnType.AutoOnEnterArea, "AutoOnEnterArea" }, { EEnemySpawnType.OverworldEnemies, "OverworldEnemies" }, + { EEnemySpawnType.FateEnemies, "FateEnemies" }, }; } diff --git a/Questionable.Model/Questing/Converter/InteractionTypeConverter.cs b/Questionable.Model/Questing/Converter/InteractionTypeConverter.cs index 8683a57a..aef951bf 100644 --- a/Questionable.Model/Questing/Converter/InteractionTypeConverter.cs +++ b/Questionable.Model/Questing/Converter/InteractionTypeConverter.cs @@ -16,6 +16,7 @@ public sealed class InteractionTypeConverter() : EnumConverter { EInteractionType.Combat, "Combat" }, { EInteractionType.UseItem, "UseItem" }, { EInteractionType.EquipItem, "EquipItem" }, + { EInteractionType.PurchaseItem, "PurchaseItem" }, { EInteractionType.EquipRecommended, "EquipRecommended" }, { EInteractionType.Say, "Say" }, { EInteractionType.Emote, "Emote" }, @@ -27,6 +28,8 @@ public sealed class InteractionTypeConverter() : EnumConverter { EInteractionType.Jump, "Jump" }, { EInteractionType.Dive, "Dive" }, { EInteractionType.Craft, "Craft" }, + { EInteractionType.Gather, "Gather" }, + { EInteractionType.Snipe, "Snipe" }, { EInteractionType.Instruction, "Instruction" }, { EInteractionType.AcceptQuest, "AcceptQuest" }, { EInteractionType.CompleteQuest, "CompleteQuest" }, diff --git a/Questionable.Model/Questing/DialogueChoice.cs b/Questionable.Model/Questing/DialogueChoice.cs index 41cb2519..329449a7 100644 --- a/Questionable.Model/Questing/DialogueChoice.cs +++ b/Questionable.Model/Questing/DialogueChoice.cs @@ -16,10 +16,16 @@ public sealed class DialogueChoice [JsonConverter(typeof(ExcelRefConverter))] public ExcelRef? Answer { get; set; } + public bool PromptIsRegularExpression { get; set; } public bool AnswerIsRegularExpression { get; set; } /// /// If set, only applies when focusing the given target id. /// public uint? DataId { get; set; } + + /// + /// Used for 'In from the Cold'. + /// + public string? SpecialCondition { get; set; } } diff --git a/Questionable.Model/Questing/EAction.cs b/Questionable.Model/Questing/EAction.cs index 08f71d5a..27bcca1f 100644 --- a/Questionable.Model/Questing/EAction.cs +++ b/Questionable.Model/Questing/EAction.cs @@ -7,13 +7,29 @@ namespace Questionable.Model.Questing; public enum EAction { HeavySwing = 31, + Bootshine = 53, + TwinSnakes = 61, + Demolish = 66, + DragonKick = 74, + HeavyShot = 97, Cure = 120, + Cure2 = 135, + Eukrasia = 24290, + Diagnosis = 24284, + EukrasianDiagnosis = 24291, Esuna = 7568, Physick = 190, + AspectedBenefic = 3595, + FormShift = 4262, BuffetSanuwa = 4931, BuffetGriffin = 4583, + Trample = 4585, Fumigate = 5872, + MagitekPulse = 8624, + MagitekThunder = 8625, + Inhale = 10013, SiphonSnout = 18187, + PeculiarLight = 20030, Cannonfire = 20121, RedGulal = 29382, YellowGulal = 29383, @@ -46,8 +62,11 @@ public static class EActionExtensions return action is EAction.BuffetSanuwa or EAction.BuffetGriffin + or EAction.Trample or EAction.Fumigate + or EAction.Inhale or EAction.SiphonSnout + or EAction.PeculiarLight or EAction.Cannonfire or EAction.RedGulal or EAction.YellowGulal diff --git a/Questionable.Model/Questing/ECombatItemUseCondition.cs b/Questionable.Model/Questing/ECombatItemUseCondition.cs new file mode 100644 index 00000000..7bb4e2b2 --- /dev/null +++ b/Questionable.Model/Questing/ECombatItemUseCondition.cs @@ -0,0 +1,8 @@ +namespace Questionable.Model.Questing; + +public enum ECombatItemUseCondition +{ + None, + Incapacitated, + HealthPercent, +} diff --git a/Questionable.Model/Questing/EEmote.cs b/Questionable.Model/Questing/EEmote.cs index 517f9db7..4f1b2c6f 100644 --- a/Questionable.Model/Questing/EEmote.cs +++ b/Questionable.Model/Questing/EEmote.cs @@ -33,4 +33,9 @@ public enum EEmote Uchiwasshoi = 278, Clap = 7, VictoryPose = 122, + Comfort = 9, + BattleStance = 121, + Doze = 13, + Box = 166, + SundropDance = 120, } diff --git a/Questionable.Model/Questing/EEnemySpawnType.cs b/Questionable.Model/Questing/EEnemySpawnType.cs index 3c42b9f4..e4f49433 100644 --- a/Questionable.Model/Questing/EEnemySpawnType.cs +++ b/Questionable.Model/Questing/EEnemySpawnType.cs @@ -9,6 +9,10 @@ public enum EEnemySpawnType None = 0, AfterInteraction, AfterItemUse, + AfterAction, + AfterEmote, AutoOnEnterArea, OverworldEnemies, + FateEnemies, + QuestInterruption, } diff --git a/Questionable.Model/Questing/EInteractionType.cs b/Questionable.Model/Questing/EInteractionType.cs index c0b3eede..af23e90e 100644 --- a/Questionable.Model/Questing/EInteractionType.cs +++ b/Questionable.Model/Questing/EInteractionType.cs @@ -15,6 +15,7 @@ public enum EInteractionType Combat, UseItem, EquipItem, + PurchaseItem, EquipRecommended, Say, Emote, @@ -26,6 +27,8 @@ public enum EInteractionType Jump, Dive, Craft, + Gather, + Snipe, /// /// Needs to be manually continued. @@ -37,7 +40,4 @@ public enum EInteractionType AcceptLeve, InitiateLeve, CompleteLeve, - - // unmapped extra types below - InternalGather, } diff --git a/Questionable.Model/Questing/NearPositionCondition.cs b/Questionable.Model/Questing/NearPositionCondition.cs index 7c5885ed..ecfba871 100644 --- a/Questionable.Model/Questing/NearPositionCondition.cs +++ b/Questionable.Model/Questing/NearPositionCondition.cs @@ -9,4 +9,5 @@ public sealed class NearPositionCondition [JsonConverter(typeof(VectorConverter))] public Vector3 Position { get; set; } public float MaximumDistance { get; set; } + public ushort TerritoryId { get; set; } } diff --git a/Questionable.Model/Questing/PurchaseMenu.cs b/Questionable.Model/Questing/PurchaseMenu.cs new file mode 100644 index 00000000..e0a2172b --- /dev/null +++ b/Questionable.Model/Questing/PurchaseMenu.cs @@ -0,0 +1,12 @@ +using System.Text.Json.Serialization; +using Questionable.Model.Questing.Converter; + +namespace Questionable.Model.Questing; + +public sealed class PurchaseMenu +{ + public string? ExcelSheet { get; set; } + + [JsonConverter(typeof(ExcelRefConverter))] + public ExcelRef? Key { get; set; } +} diff --git a/Questionable.Model/Questing/QuestRoot.cs b/Questionable.Model/Questing/QuestRoot.cs index e1158fc8..99899412 100644 --- a/Questionable.Model/Questing/QuestRoot.cs +++ b/Questionable.Model/Questing/QuestRoot.cs @@ -16,6 +16,5 @@ public sealed class QuestRoot public bool Disabled { get; set; } public string? Comment { get; set; } - public List TerritoryBlacklist { get; set; } = new(); public List QuestSequence { get; set; } = new(); } diff --git a/Questionable.Model/Questing/QuestStep.cs b/Questionable.Model/Questing/QuestStep.cs index a09386bc..dcb8042a 100644 --- a/Questionable.Model/Questing/QuestStep.cs +++ b/Questionable.Model/Questing/QuestStep.cs @@ -12,6 +12,7 @@ namespace Questionable.Model.Questing; public sealed class QuestStep { public const float DefaultStopDistance = 3f; + public const int VesperBayAetheryteTicket = 30362; public uint? DataId { get; set; } @@ -36,6 +37,7 @@ public sealed class QuestStep public bool? Land { get; set; } public bool? Sprint { get; set; } public bool? IgnoreDistanceToObject { get; set; } + public bool? RestartNavigationIfCancelled { get; set; } public string? Comment { get; set; } /// @@ -65,6 +67,7 @@ public sealed class QuestStep public EEnemySpawnType? EnemySpawnType { get; set; } public List KillEnemyDataIds { get; set; } = []; public List ComplexCombatData { get; set; } = []; + public CombatItemUse? CombatItemUse { get; set; } public float? CombatDelaySecondsAtStart { get; set; } public JumpDestination? JumpDestination { get; set; } @@ -72,10 +75,11 @@ public sealed class QuestStep public SkipConditions? SkipConditions { get; set; } public List?> RequiredQuestVariables { get; set; } = new(); - public List RequiredGatheredItems { get; set; } = []; + public List ItemsToGather { get; set; } = []; public List CompletionQuestVariablesFlags { get; set; } = []; public List DialogueChoices { get; set; } = []; public List PointMenuChoices { get; set; } = []; + public PurchaseMenu? PurchaseMenu { get; set; } // TODO: Not implemented [JsonConverter(typeof(ElementIdConverter))] @@ -109,4 +113,19 @@ public sealed class QuestStep else return StopDistance ?? DefaultStopDistance; } + + /// + /// Only relevant for the step 0 in sequence 0: Whether this step is valid for teleporting to it. + /// + /// + public bool IsTeleportableForPriorityQuests() + { + if (AetheryteShortcut != null) + return true; + + if (InteractionType == EInteractionType.UseItem && ItemId == VesperBayAetheryteTicket) + return true; + + return false; + } } diff --git a/Questionable.Model/Questing/SkipAetheryteCondition.cs b/Questionable.Model/Questing/SkipAetheryteCondition.cs index 573c3e2e..70e13474 100644 --- a/Questionable.Model/Questing/SkipAetheryteCondition.cs +++ b/Questionable.Model/Questing/SkipAetheryteCondition.cs @@ -1,5 +1,7 @@ using System.Collections.Generic; +using System.Text.Json.Serialization; using Questionable.Model.Common; +using Questionable.Model.Questing.Converter; namespace Questionable.Model.Questing; @@ -8,6 +10,13 @@ public sealed class SkipAetheryteCondition public bool Never { get; set; } public bool InSameTerritory { get; set; } public List InTerritory { get; set; } = new(); + + [JsonConverter(typeof(ElementIdListConverter))] + public List QuestsAccepted { get; set; } = new(); + + [JsonConverter(typeof(ElementIdListConverter))] + public List QuestsCompleted { get; set; } = new(); + public EAetheryteLocation? AetheryteLocked { get; set; } public EAetheryteLocation? AetheryteUnlocked { get; set; } public bool RequiredQuestVariablesNotMet { get; set; } diff --git a/Questionable.Model/Questing/SkipStepConditions.cs b/Questionable.Model/Questing/SkipStepConditions.cs index 323a0dc0..25c1a46b 100644 --- a/Questionable.Model/Questing/SkipStepConditions.cs +++ b/Questionable.Model/Questing/SkipStepConditions.cs @@ -1,6 +1,8 @@ using System.Collections.Generic; using System.Linq; +using System.Text.Json.Serialization; using Questionable.Model.Common; +using Questionable.Model.Questing.Converter; namespace Questionable.Model.Questing; @@ -11,11 +13,18 @@ public sealed class SkipStepConditions public ELockedSkipCondition? Flying { get; set; } public ELockedSkipCondition? Chocobo { get; set; } public bool NotTargetable { get; set; } - public List InTerritory { get; set; } = new(); - public List NotInTerritory { get; set; } = new(); + public List InTerritory { get; set; } = []; + public List NotInTerritory { get; set; } = []; public SkipItemConditions? Item { get; set; } - public List QuestsAccepted { get; set; } = new(); - public List QuestsCompleted { get; set; } = new(); + + [JsonConverter(typeof(ElementIdListConverter))] + public List QuestsAccepted { get; set; } = []; + + [JsonConverter(typeof(ElementIdListConverter))] + public List QuestsCompleted { get; set; } = []; + + public List NotNamePlateIconId { get; set; } = []; + public EAetheryteLocation? AetheryteLocked { get; set; } public EAetheryteLocation? AetheryteUnlocked { get; set; } public NearPositionCondition? NearPosition { get; set; } @@ -34,6 +43,7 @@ public sealed class SkipStepConditions Item != null || QuestsAccepted.Count > 0 || QuestsCompleted.Count > 0 || + NotNamePlateIconId.Count > 0 || AetheryteLocked != null || AetheryteUnlocked != null || NearPosition != null || @@ -43,6 +53,6 @@ public sealed class SkipStepConditions public override string ToString() { return - $"{nameof(Never)}: {Never}, {nameof(CompletionQuestVariablesFlags)}: {CompletionQuestVariablesFlags}, {nameof(Flying)}: {Flying}, {nameof(Chocobo)}: {Chocobo}, {nameof(NotTargetable)}: {NotTargetable}, {nameof(InTerritory)}: {string.Join(" ", InTerritory)}, {nameof(NotInTerritory)}: {string.Join(" ", NotInTerritory)}, {nameof(Item)}: {Item}, {nameof(QuestsAccepted)}: {string.Join(" ", QuestsAccepted)}, {nameof(QuestsCompleted)}: {string.Join(" ", QuestsCompleted)}, {nameof(NearPosition)}: {NearPosition}, {nameof(ExtraCondition)}: {ExtraCondition}"; + $"{nameof(Never)}: {Never}, {nameof(CompletionQuestVariablesFlags)}: {CompletionQuestVariablesFlags}, {nameof(Flying)}: {Flying}, {nameof(Chocobo)}: {Chocobo}, {nameof(NotTargetable)}: {NotTargetable}, {nameof(InTerritory)}: {string.Join(" ", InTerritory)}, {nameof(NotInTerritory)}: {string.Join(" ", NotInTerritory)}, {nameof(Item)}: {Item}, {nameof(QuestsAccepted)}: {string.Join(" ", QuestsAccepted)}, {nameof(QuestsCompleted)}: {string.Join(" ", QuestsCompleted)}, {nameof(NotNamePlateIconId)}: {string.Join(" ", NotNamePlateIconId)}, {nameof(NearPosition)}: {NearPosition}, {nameof(ExtraCondition)}: {ExtraCondition}"; } } diff --git a/Questionable.Model/Questionable.Model.csproj b/Questionable.Model/Questionable.Model.csproj index 54301430..62ae2a34 100644 --- a/Questionable.Model/Questionable.Model.csproj +++ b/Questionable.Model/Questionable.Model.csproj @@ -11,7 +11,7 @@ - + diff --git a/Questionable.Model/common-schema.json b/Questionable.Model/common-schema.json index 3849ec2e..d3c974ec 100644 --- a/Questionable.Model/common-schema.json +++ b/Questionable.Model/common-schema.json @@ -50,8 +50,8 @@ "Outer La Noscea - Camp Overlook", "Coerthas Central Highlands - Camp Dragonhead", "Mor Dhona", - "Gold Saucer", "Wolves' Den Pier", + "Gold Saucer", "Ishgard", "Idyllshire", "Coerthas Western Highlands - Falcon's Nest", @@ -171,6 +171,15 @@ "[Limsa Lominsa] Zephyr Gate (Middle La Noscea)", "[Limsa Lominsa] Tempest Gate (Lower La Noscea)", "[Limsa Lominsa] Airship Landing", + "[Gold Saucer] Aetheryte Plaza", + "[Gold Saucer] Entrance & Card Squares", + "[Gold Saucer] Wonder Square East", + "[Gold Saucer] Wonder Square West", + "[Gold Saucer] Event Square", + "[Gold Saucer] Cactpot Board", + "[Gold Saucer] Round Square", + "[Gold Saucer] Chocobo Square", + "[Gold Saucer] Minion Square", "[Ishgard] Aetheryte Plaza", "[Ishgard] The Forgotten Knight", "[Ishgard] Skysteel Manufactory", @@ -210,6 +219,12 @@ "[Kugane] Rakuza District", "[Kugane] The Ruby Price", "[Kugane] Airship Landing", + "[Doman Enclave] Aetheryte Plaza", + "[Doman Enclave] The Northern Enclave", + "[Doman Enclave] The Southern Enclave", + "[Doman Enclave] Ferry Docks", + "[Doman Enclave] The One River", + "[Doman Enclave] Gangos", "[Crystarium] Aetheryte Plaza", "[Crystarium] Musica Universalis Markets", "[Crystarium] Temenos Rookery", diff --git a/Questionable.Model/packages.lock.json b/Questionable.Model/packages.lock.json index c609cb4f..7fd9471e 100644 --- a/Questionable.Model/packages.lock.json +++ b/Questionable.Model/packages.lock.json @@ -13,9 +13,9 @@ }, "System.Text.Json": { "type": "Direct", - "requested": "[8.0.4, )", - "resolved": "8.0.4", - "contentHash": "bAkhgDJ88XTsqczoxEMliSrpijKZHhbJQldhAmObj/RbrN3sU5dcokuXmWJWsdQAhiMJ9bTayWsL1C9fbbCRhw==", + "requested": "[8.0.5, )", + "resolved": "8.0.5", + "contentHash": "0f1B50Ss7rqxXiaBJyzUu9bWFOO2/zSlifZ/UNMdiIpDYe4cY4LQQicP4nirK1OS31I43rn062UIJ1Q9bpmHpg==", "dependencies": { "Microsoft.Bcl.AsyncInterfaces": "8.0.0", "System.Buffers": "4.5.1", diff --git a/Questionable/Configuration.cs b/Questionable/Configuration.cs index 9f86cb94..f2a25164 100644 --- a/Questionable/Configuration.cs +++ b/Questionable/Configuration.cs @@ -19,6 +19,8 @@ internal sealed class Configuration : IPluginConfiguration public bool HideInAllInstances { get; set; } = true; public bool UseEscToCancelQuesting { get; set; } = true; public bool ShowIncompleteSeasonalEvents { get; set; } = true; + public bool AutomaticallyCompleteSnipeTasks { get; set; } + public bool ConfigureTextAdvance { get; set; } = true; } internal sealed class AdvancedConfiguration diff --git a/Questionable/Controller/CombatController.cs b/Questionable/Controller/CombatController.cs index 2a7c08d9..9cdf3bcf 100644 --- a/Questionable/Controller/CombatController.cs +++ b/Questionable/Controller/CombatController.cs @@ -35,6 +35,7 @@ internal sealed class CombatController : IDisposable private CurrentFight? _currentFight; private bool _wasInCombat; + private ulong? _lastTargetId; public CombatController( IEnumerable combatModules, @@ -64,17 +65,18 @@ internal sealed class CombatController : IDisposable { Stop("Starting combat"); - var combatModule = _combatModules.FirstOrDefault(x => x.IsLoaded); + var combatModule = _combatModules.FirstOrDefault(x => x.CanHandleFight(combatData)); if (combatModule == null) return false; - if (combatModule.Start()) + if (combatModule.Start(combatData)) { _currentFight = new CurrentFight { Module = combatModule, Data = combatData, }; + _wasInCombat = combatData.SpawnType == EEnemySpawnType.QuestInterruption; return true; } else @@ -86,9 +88,38 @@ internal sealed class CombatController : IDisposable if (_currentFight == null) return EStatus.Complete; - if (_movementController.IsPathfinding || _movementController.IsPathRunning || _movementController.MovementStartedAt > DateTime.Now.AddSeconds(-1)) + if (_movementController.IsPathfinding || + _movementController.IsPathRunning || + _movementController.MovementStartedAt > DateTime.Now.AddSeconds(-1)) return EStatus.Moving; + // Overworld enemies typically means that if we want to kill 3 enemies, we could have anywhere from 0 to 20 + // enemies in the area (0 if someone else killed them before, like can happen with bots in Fools' Falls in + // La Noscea). + // + // For all 'normal' types, e.g. auto-spawning on entering an area, there's a fixed number of enemies that you're + // fighting with, and the enemies in the overworld aren't relevant. + if (_currentFight.Data.SpawnType is EEnemySpawnType.OverworldEnemies) + { + if (_targetManager.Target != null) + _lastTargetId = _targetManager.Target?.GameObjectId; + else + { + if (_lastTargetId != null) + { + IGameObject? lastTarget = _objectTable.FirstOrDefault(x => x.GameObjectId == _lastTargetId); + if (lastTarget != null) + { + // wait until the game cleans up the target + if (lastTarget.IsDead) + return EStatus.InCombat; + } + else + _lastTargetId = null; + } + } + } + var target = _targetManager.Target; if (target != null) { @@ -189,40 +220,37 @@ internal sealed class CombatController : IDisposable public unsafe int GetKillPriority(IGameObject gameObject) { + if (_currentFight == null) + return 0; + if (gameObject is IBattleNpc battleNpc) { - // TODO this works as somewhat of a delay between killing enemies if certain items/flags are checked - // but also delays killing the next enemy a little - if (_currentFight == null || _currentFight.Data.SpawnType != EEnemySpawnType.OverworldEnemies || - _currentFight.Data.ComplexCombatDatas.Count == 0) - { - if (battleNpc.IsDead) - return 0; - } + if (!_currentFight.Module.CanAttack(battleNpc)) + return 0; + + if (battleNpc.IsDead) + return 0; if (!battleNpc.IsTargetable) return 0; - if (_currentFight != null) + var complexCombatData = _currentFight.Data.ComplexCombatDatas; + if (complexCombatData.Count >= 0) { - var complexCombatData = _currentFight.Data.ComplexCombatDatas; - if (complexCombatData.Count >= 0) + for (int i = 0; i < complexCombatData.Count; ++i) { - for (int i = 0; i < complexCombatData.Count; ++i) - { - if (_currentFight.Data.CompletedComplexDatas.Contains(i)) - continue; + if (_currentFight.Data.CompletedComplexDatas.Contains(i)) + continue; - if (complexCombatData[i].DataId == battleNpc.DataId) - return 100; - } - } - else - { - if (_currentFight.Data.KillEnemyDataIds.Contains(battleNpc.DataId)) - return 90; + if (complexCombatData[i].DataId == battleNpc.DataId) + return 100; } } + else + { + if (_currentFight.Data.KillEnemyDataIds.Contains(battleNpc.DataId)) + return 90; + } // enemies that we have aggro on if (battleNpc.BattleNpcKind is BattleNpcSubKind.BattleNpcPart or BattleNpcSubKind.Enemy) @@ -233,8 +261,7 @@ internal sealed class CombatController : IDisposable if (gameObjectStruct->NamePlateIconId is 60093 or 60732) return 0; - var enemyData = - _currentFight?.Data.ComplexCombatDatas.FirstOrDefault(x => x.DataId == battleNpc.DataId); + var enemyData = _currentFight.Data.ComplexCombatDatas.FirstOrDefault(x => x.DataId == battleNpc.DataId); if (enemyData is { IgnoreQuestMarker: true }) { if (battleNpc.StatusFlags.HasFlag(StatusFlags.InCombat)) @@ -247,7 +274,8 @@ internal sealed class CombatController : IDisposable // for enemies that are very far away, their nameplate doesn't render but they're in the object table if (_currentFight?.Data.SpawnType == EEnemySpawnType.OverworldEnemies && - Vector3.Distance(_clientState.LocalPlayer?.Position ?? Vector3.Zero, battleNpc.Position) > MaxNameplateRange) + Vector3.Distance(_clientState.LocalPlayer?.Position ?? Vector3.Zero, battleNpc.Position) > + MaxNameplateRange) return 25; } else @@ -290,12 +318,14 @@ internal sealed class CombatController : IDisposable } else if (Vector3.Distance(_clientState.LocalPlayer!.Position, target.Position) > MaxTargetRange) { - _logger.LogInformation("Moving to target, distance: {Distance:N2}", Vector3.Distance(_clientState.LocalPlayer!.Position, target.Position)); + _logger.LogInformation("Moving to target, distance: {Distance:N2}", + Vector3.Distance(_clientState.LocalPlayer!.Position, target.Position)); _currentFight!.Module.MoveToTarget(target); } else { - _logger.LogInformation("Setting target to {TargetName} ({TargetId:X8})", target.Name.ToString(), target.GameObjectId); + _logger.LogInformation("Setting target to {TargetName} ({TargetId:X8})", target.Name.ToString(), + target.GameObjectId); _targetManager.Target = target; _currentFight!.Module.MoveToTarget(target); } @@ -330,16 +360,18 @@ internal sealed class CombatController : IDisposable public sealed class CombatData { - public required ElementId ElementId { get; init; } + public required ElementId? ElementId { get; init; } public required EEnemySpawnType SpawnType { get; init; } public required List KillEnemyDataIds { get; init; } public required List ComplexCombatDatas { get; init; } + public required CombatItemUse? CombatItemUse { get; init; } public HashSet CompletedComplexDatas { get; } = new(); } public enum EStatus { + NotStarted, InCombat, Moving, Complete, diff --git a/Questionable/Controller/CombatModules/ICombatModule.cs b/Questionable/Controller/CombatModules/ICombatModule.cs index 1aec57cc..06fe4ae6 100644 --- a/Questionable/Controller/CombatModules/ICombatModule.cs +++ b/Questionable/Controller/CombatModules/ICombatModule.cs @@ -4,13 +4,15 @@ namespace Questionable.Controller.CombatModules; internal interface ICombatModule { - bool IsLoaded { get; } + bool CanHandleFight(CombatController.CombatData combatData); - bool Start(); + bool Start(CombatController.CombatData combatData); bool Stop(); void Update(IGameObject nextTarget); void MoveToTarget(IGameObject nextTarget); + + bool CanAttack(IBattleNpc target); } diff --git a/Questionable/Controller/CombatModules/ItemUseModule.cs b/Questionable/Controller/CombatModules/ItemUseModule.cs new file mode 100644 index 00000000..91b4ca1d --- /dev/null +++ b/Questionable/Controller/CombatModules/ItemUseModule.cs @@ -0,0 +1,157 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using Dalamud.Game.ClientState.Conditions; +using Dalamud.Game.ClientState.Objects.Types; +using Dalamud.Plugin.Services; +using FFXIVClientStructs.FFXIV.Client.Game; +using FFXIVClientStructs.FFXIV.Client.Game.Character; +using FFXIVClientStructs.FFXIV.Client.UI.Agent; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Logging; +using Questionable.Functions; +using Questionable.Model.Questing; + +namespace Questionable.Controller.CombatModules; + +internal sealed class ItemUseModule : ICombatModule +{ + private readonly IServiceProvider _serviceProvider; + private readonly ICondition _condition; + private readonly ILogger _logger; + + private ICombatModule? _delegate; + private CombatController.CombatData? _combatData; + private bool _isDoingRotation; + private DateTime _continueAt; + + public ItemUseModule(IServiceProvider serviceProvider, ICondition condition, ILogger logger) + { + _serviceProvider = serviceProvider; + _condition = condition; + _logger = logger; + } + + public bool CanHandleFight(CombatController.CombatData combatData) + { + if (combatData.CombatItemUse == null) + return false; + + _delegate = _serviceProvider.GetRequiredService>() + .Where(x => x is not ItemUseModule) + .FirstOrDefault(x => x.CanHandleFight(combatData)); + _logger.LogInformation("ItemUse delegate: {Delegate}", _delegate?.GetType().Name); + return _delegate != null; + } + + public bool Start(CombatController.CombatData combatData) + { + if (_delegate!.Start(combatData)) + { + _combatData = combatData; + _isDoingRotation = true; + _continueAt = DateTime.Now; + return true; + } + + return false; + } + + public bool Stop() + { + if (_isDoingRotation) + { + _delegate!.Stop(); + _isDoingRotation = false; + _combatData = null; + _delegate = null; + _continueAt = DateTime.Now; + } + + return true; + } + + public void Update(IGameObject nextTarget) + { + if (_delegate == null) + return; + + if (_continueAt > DateTime.Now) + return; + + if (_combatData?.CombatItemUse == null) + { + _delegate.Update(nextTarget); + return; + } + + if (_combatData.KillEnemyDataIds.Contains(nextTarget.DataId) || + _combatData.ComplexCombatDatas.Any(x => x.DataId == nextTarget.DataId)) + { + if (_isDoingRotation) + { + unsafe + { + InventoryManager* inventoryManager = InventoryManager.Instance(); + if (inventoryManager->GetInventoryItemCount(_combatData.CombatItemUse.ItemId) == 0) + { + _isDoingRotation = false; + _delegate.Stop(); + return; + } + } + + if (ShouldUseItem(nextTarget)) + { + _isDoingRotation = false; + _delegate.Stop(); + unsafe + { + AgentInventoryContext.Instance()->UseItem(_combatData.CombatItemUse.ItemId); + } + _continueAt = DateTime.Now.AddSeconds(2); + } + else + _delegate.Update(nextTarget); + } + else if (_condition[ConditionFlag.Casting]) + { + // do nothing + DateTime alternativeContinueAt = DateTime.Now.AddSeconds(0.5); + if (alternativeContinueAt > _continueAt) + _continueAt = alternativeContinueAt; + } + else + { + _isDoingRotation = true; + _delegate.Start(_combatData); + } + } + else if (_isDoingRotation) + { + _delegate.Update(nextTarget); + } + } + + private unsafe bool ShouldUseItem(IGameObject gameObject) + { + if (_combatData?.CombatItemUse == null) + return false; + + if (gameObject is IBattleChara) + { + BattleChara* battleChara = (BattleChara*)gameObject.Address; + if (_combatData.CombatItemUse.Condition == ECombatItemUseCondition.Incapacitated) + return (battleChara->Flags2 & 128u) != 0; + + if (_combatData.CombatItemUse.Condition == ECombatItemUseCondition.HealthPercent) + return (100f * battleChara->Health / battleChara->MaxHealth) < _combatData.CombatItemUse.Value; + } + + return false; + } + + public void MoveToTarget(IGameObject nextTarget) => _delegate!.MoveToTarget(nextTarget); + + public bool CanAttack(IBattleNpc target) => _delegate!.CanAttack(target); +} diff --git a/Questionable/Controller/CombatModules/Mount128Module.cs b/Questionable/Controller/CombatModules/Mount128Module.cs new file mode 100644 index 00000000..e665163a --- /dev/null +++ b/Questionable/Controller/CombatModules/Mount128Module.cs @@ -0,0 +1,51 @@ +using System; +using System.Numerics; +using Dalamud.Game.ClientState.Objects.Types; +using Questionable.Functions; +using Questionable.Model; +using Questionable.Model.Questing; + +namespace Questionable.Controller.CombatModules; + +/// +/// Commandeered Magitek Armor; used in 'Magiteknical Failure' quest. +/// +internal sealed class Mount128Module : ICombatModule +{ + public const ushort MountId = 128; + private readonly EAction[] _actions = [EAction.MagitekThunder, EAction.MagitekPulse]; + + private readonly MovementController _movementController; + private readonly GameFunctions _gameFunctions; + + + public Mount128Module(MovementController movementController, GameFunctions gameFunctions) + { + _movementController = movementController; + _gameFunctions = gameFunctions; + } + + public bool CanHandleFight(CombatController.CombatData combatData) => _gameFunctions.GetMountId() == MountId; + + public bool Start(CombatController.CombatData combatData) => true; + + public bool Stop() => true; + + public void Update(IGameObject gameObject) + { + if (_movementController.IsPathfinding || _movementController.IsPathRunning) + return; + + foreach (EAction action in _actions) + { + if (_gameFunctions.UseAction(gameObject, action, checkCanUse: false)) + return; + } + } + + public void MoveToTarget(IGameObject gameObject) + { + } + + public bool CanAttack(IBattleNpc target) => target.DataId is 7504 or 7505 or 14107; +} diff --git a/Questionable/Controller/CombatModules/RotationSolverRebornModule.cs b/Questionable/Controller/CombatModules/RotationSolverRebornModule.cs index 0af5fda4..a0b43b2f 100644 --- a/Questionable/Controller/CombatModules/RotationSolverRebornModule.cs +++ b/Questionable/Controller/CombatModules/RotationSolverRebornModule.cs @@ -32,23 +32,20 @@ internal sealed class RotationSolverRebornModule : ICombatModule, IDisposable pluginInterface.GetIpcSubscriber("RotationSolverReborn.ChangeOperatingMode"); } - public bool IsLoaded + public bool CanHandleFight(CombatController.CombatData combatData) { - get + try { - try - { - _test.InvokeAction("Validate RSR is callable from Questionable"); - return true; - } - catch (IpcError) - { - return false; - } + _test.InvokeAction("Validate RSR is callable from Questionable"); + return true; + } + catch (IpcError) + { + return false; } } - public bool Start() + public bool Start(CombatController.CombatData combatData) { try { @@ -85,7 +82,7 @@ internal sealed class RotationSolverRebornModule : ICombatModule, IDisposable float hitboxOffset = player.HitboxRadius + gameObject.HitboxRadius; float actualDistance = Vector3.Distance(player.Position, gameObject.Position); - float maxDistance = player.ClassJob.GameData?.Role is 3 or 4 ? 20f : 3f; + float maxDistance = player.ClassJob.GameData?.Role is 3 or 4 ? 20f : 2.9f; if (actualDistance - hitboxOffset >= maxDistance) { if (actualDistance - hitboxOffset <= 5) @@ -119,6 +116,8 @@ internal sealed class RotationSolverRebornModule : ICombatModule, IDisposable } } + public bool CanAttack(IBattleNpc target) => true; + public void Dispose() => Stop(); [PublicAPI] diff --git a/Questionable/Controller/CommandHandler.cs b/Questionable/Controller/CommandHandler.cs index dbf8ade5..4f80f53b 100644 --- a/Questionable/Controller/CommandHandler.cs +++ b/Questionable/Controller/CommandHandler.cs @@ -3,16 +3,20 @@ using System.Linq; using Dalamud.Game.ClientState.Objects; using Dalamud.Game.Command; using Dalamud.Plugin.Services; +using Lumina.Excel.GeneratedSheets; using Questionable.Functions; -using Questionable.Model; using Questionable.Model.Questing; using Questionable.Windows; using Questionable.Windows.QuestComponents; +using Quest = Questionable.Model.Quest; namespace Questionable.Controller; internal sealed class CommandHandler : IDisposable { + public const string MessageTag = "Questionable"; + public const ushort TagColor = 576; + private readonly ICommandManager _commandManager; private readonly IChatGui _chatGui; private readonly QuestController _questController; @@ -24,6 +28,8 @@ internal sealed class CommandHandler : IDisposable private readonly QuestSelectionWindow _questSelectionWindow; private readonly ITargetManager _targetManager; private readonly QuestFunctions _questFunctions; + private readonly GameFunctions _gameFunctions; + private readonly IDataManager _dataManager; public CommandHandler( ICommandManager commandManager, @@ -36,7 +42,9 @@ internal sealed class CommandHandler : IDisposable QuestWindow questWindow, QuestSelectionWindow questSelectionWindow, ITargetManager targetManager, - QuestFunctions questFunctions) + QuestFunctions questFunctions, + GameFunctions gameFunctions, + IDataManager dataManager) { _commandManager = commandManager; _chatGui = chatGui; @@ -49,6 +57,8 @@ internal sealed class CommandHandler : IDisposable _questSelectionWindow = questSelectionWindow; _targetManager = targetManager; _questFunctions = questFunctions; + _gameFunctions = gameFunctions; + _dataManager = dataManager; _commandManager.AddHandler("/qst", new CommandInfo(ProcessCommand) { @@ -108,12 +118,20 @@ internal sealed class CommandHandler : IDisposable _questSelectionWindow.OpenForCurrentZone(); break; + case "mountid": + PrintMountId(); + break; + + case "handle-interrupt": + _questController.InterruptQueueWithCombat(); + break; + case "": _questWindow.Toggle(); break; default: - _chatGui.PrintError($"Unknown subcommand {parts[0]}", "Questionable"); + _chatGui.PrintError($"Unknown subcommand {parts[0]}", MessageTag, TagColor); break; } } @@ -122,7 +140,7 @@ internal sealed class CommandHandler : IDisposable { if (!_debugOverlay.DrawConditions()) { - _chatGui.PrintError("[Questionable] You don't have the debug overlay enabled."); + _chatGui.PrintError("You don't have the debug overlay enabled.", MessageTag, TagColor); return; } @@ -131,15 +149,15 @@ internal sealed class CommandHandler : IDisposable if (_questRegistry.TryGetQuest(questId, out Quest? quest)) { _debugOverlay.HighlightedQuest = quest.Id; - _chatGui.Print($"[Questionable] Set highlighted quest to {questId} ({quest.Info.Name})."); + _chatGui.Print($"Set highlighted quest to {questId} ({quest.Info.Name}).", MessageTag, TagColor); } else - _chatGui.PrintError($"[Questionable] Unknown quest {questId}."); + _chatGui.PrintError($"Unknown quest {questId}.", MessageTag, TagColor); } else { _debugOverlay.HighlightedQuest = null; - _chatGui.Print("[Questionable] Cleared highlighted quest."); + _chatGui.Print("Cleared highlighted quest.", MessageTag, TagColor); } } @@ -148,21 +166,21 @@ internal sealed class CommandHandler : IDisposable if (arguments.Length >= 1 && ElementId.TryFromString(arguments[0], out ElementId? questId) && questId != null) { if (_questFunctions.IsQuestLocked(questId)) - _chatGui.PrintError($"[Questionable] Quest {questId} is locked."); + _chatGui.PrintError($"Quest {questId} is locked.", MessageTag, TagColor); else if (_questRegistry.TryGetQuest(questId, out Quest? quest)) { _questController.SetNextQuest(quest); - _chatGui.Print($"[Questionable] Set next quest to {questId} ({quest.Info.Name})."); + _chatGui.Print($"Set next quest to {questId} ({quest.Info.Name}).", MessageTag, TagColor); } else { - _chatGui.PrintError($"[Questionable] Unknown quest {questId}."); + _chatGui.PrintError($"Unknown quest {questId}.", MessageTag, TagColor); } } else { _questController.SetNextQuest(null); - _chatGui.Print("[Questionable] Cleared next quest."); + _chatGui.Print("Cleared next quest.", MessageTag, TagColor); } } @@ -173,18 +191,32 @@ internal sealed class CommandHandler : IDisposable if (_questRegistry.TryGetQuest(questId, out Quest? quest)) { _questController.SimulateQuest(quest); - _chatGui.Print($"[Questionable] Simulating quest {questId} ({quest.Info.Name})."); + _chatGui.Print($"Simulating quest {questId} ({quest.Info.Name}).", MessageTag, TagColor); } else - _chatGui.PrintError($"[Questionable] Unknown quest {questId}."); + _chatGui.PrintError($"Unknown quest {questId}.", MessageTag, TagColor); } else { _questController.SimulateQuest(null); - _chatGui.Print("[Questionable] Cleared simulated quest."); + _chatGui.Print("Cleared simulated quest.", MessageTag, TagColor); } } + private void PrintMountId() + { + ushort? mountId = _gameFunctions.GetMountId(); + if (mountId != null) + { + var row = _dataManager.GetExcelSheet()!.GetRow(mountId.Value); + _chatGui.Print( + $"Mount ID: {mountId}, Name: {row?.Singular}, Obtainable: {(row?.Order == -1 ? "No" : "Yes")}", + MessageTag, TagColor); + } + else + _chatGui.Print("You are not mounted.", MessageTag, TagColor); + } + public void Dispose() { _commandManager.RemoveHandler("/qst"); diff --git a/Questionable/Controller/ContextMenuController.cs b/Questionable/Controller/ContextMenuController.cs index f8441e63..819d8b25 100644 --- a/Questionable/Controller/ContextMenuController.cs +++ b/Questionable/Controller/ContextMenuController.cs @@ -99,7 +99,7 @@ internal sealed class ContextMenuController : IDisposable if (agentSatisfactionSupply->IsAgentActive()) { int maxTurnIns = agentSatisfactionSupply->NpcInfo.SatisfactionRank == 1 ? 3 : 6; - quantityToGather = Math.Min(agentSatisfactionSupply->RemainingAllowances, + quantityToGather = Math.Min(agentSatisfactionSupply->NpcData.RemainingAllowances, ((AgentSatisfactionSupply2*)agentSatisfactionSupply)->CalculateTurnInsToNextRank(maxTurnIns)); } } @@ -134,8 +134,8 @@ internal sealed class ContextMenuController : IDisposable .Single(x => x is SatisfactionSupplyInfo); if (_questRegistry.TryGetQuest(info.QuestId, out Quest? quest)) { - var step = quest.FindSequence(0)!.FindStep(0)!; - step.RequiredGatheredItems = + var step = quest.FindSequence(0)!.Steps.Single(x => x.InteractionType == EInteractionType.Gather); + step.ItemsToGather = [ new GatheredItem { diff --git a/Questionable/Controller/GameUi/HelpUiController.cs b/Questionable/Controller/GameUi/HelpUiController.cs index a7b23398..0d869add 100644 --- a/Questionable/Controller/GameUi/HelpUiController.cs +++ b/Questionable/Controller/GameUi/HelpUiController.cs @@ -24,13 +24,8 @@ internal sealed class HelpUiController : IDisposable _addonLifecycle.RegisterListener(AddonEvent.PostSetup, "MultipleHelpWindow", MultipleHelpWindowPostSetup); } - private bool ShouldHandleUiInteractions => _questController.IsRunning; - private unsafe void UnendingCodexPostSetup(AddonEvent type, AddonArgs args) { - if (!ShouldHandleUiInteractions) - return; - if (_questController.StartedQuest?.Quest.Id.Value == 4526) { _logger.LogInformation("Closing Unending Codex"); @@ -41,9 +36,6 @@ internal sealed class HelpUiController : IDisposable private unsafe void ContentsTutorialPostSetup(AddonEvent type, AddonArgs args) { - if (!ShouldHandleUiInteractions) - return; - if (_questController.StartedQuest?.Quest.Id.Value == 245) { _logger.LogInformation("Closing ContentsTutorial"); @@ -57,9 +49,6 @@ internal sealed class HelpUiController : IDisposable /// private unsafe void MultipleHelpWindowPostSetup(AddonEvent type, AddonArgs args) { - if (!ShouldHandleUiInteractions) - return; - if (_questController.StartedQuest?.Quest.Id.Value == 245) { _logger.LogInformation("Closing MultipleHelpWindow"); diff --git a/Questionable/Controller/GameUi/InteractionUiController.cs b/Questionable/Controller/GameUi/InteractionUiController.cs index 64c17832..698d24dd 100644 --- a/Questionable/Controller/GameUi/InteractionUiController.cs +++ b/Questionable/Controller/GameUi/InteractionUiController.cs @@ -7,7 +7,9 @@ using Dalamud.Game.Addon.Lifecycle; using Dalamud.Game.Addon.Lifecycle.AddonArgTypes; using Dalamud.Game.ClientState.Objects; using Dalamud.Plugin.Services; +using FFXIVClientStructs.FFXIV.Client.Game; using FFXIVClientStructs.FFXIV.Client.Game.Event; +using FFXIVClientStructs.FFXIV.Client.Game.InstanceContent; using FFXIVClientStructs.FFXIV.Client.Game.UI; using FFXIVClientStructs.FFXIV.Client.UI; using FFXIVClientStructs.FFXIV.Component.GUI; @@ -42,9 +44,11 @@ internal sealed class InteractionUiController : IDisposable private readonly GatheringPointRegistry _gatheringPointRegistry; private readonly QuestRegistry _questRegistry; private readonly QuestData _questData; + private readonly TerritoryData _territoryData; private readonly IGameGui _gameGui; private readonly ITargetManager _targetManager; private readonly IClientState _clientState; + private readonly ShopController _shopController; private readonly ILogger _logger; private readonly Regex _returnRegex; @@ -61,10 +65,12 @@ internal sealed class InteractionUiController : IDisposable GatheringPointRegistry gatheringPointRegistry, QuestRegistry questRegistry, QuestData questData, + TerritoryData territoryData, IGameGui gameGui, ITargetManager targetManager, IPluginLog pluginLog, IClientState clientState, + ShopController shopController, ILogger logger) { _addonLifecycle = addonLifecycle; @@ -77,9 +83,11 @@ internal sealed class InteractionUiController : IDisposable _gatheringPointRegistry = gatheringPointRegistry; _questRegistry = questRegistry; _questData = questData; + _territoryData = territoryData; _gameGui = gameGui; _targetManager = targetManager; _clientState = clientState; + _shopController = shopController; _logger = logger; _returnRegex = _dataManager.GetExcelSheet()!.GetRow(196)!.GetRegex(addon => addon.Text, pluginLog)!; @@ -101,7 +109,9 @@ internal sealed class InteractionUiController : IDisposable } } - private bool ShouldHandleUiInteractions => _isInitialCheck || _questController.IsRunning; + private bool ShouldHandleUiInteractions => _isInitialCheck || + _questController.IsRunning || + _territoryData.IsQuestBattleInstance(_clientState.TerritoryType); internal unsafe void HandleCurrentDialogueChoices() { @@ -230,6 +240,16 @@ internal sealed class InteractionUiController : IDisposable _logger.LogInformation("Checking if current quest {Name} is on the list", currentQuest.Quest.Info.Name); if (CheckQuestSelection(addonSelectIconString, currentQuest.Quest, answers)) return; + + var sequence = currentQuest.Quest.FindSequence(currentQuest.Sequence); + QuestStep? step = sequence?.FindStep(currentQuest.Step); + if (step is { InteractionType: EInteractionType.AcceptQuest, PickUpQuestId: not null } && + _questRegistry.TryGetQuest(step.PickUpQuestId, out Quest? pickupQuest)) + { + _logger.LogInformation("Checking if current picked-up {Name} is on the list", pickupQuest.Info.Name); + if (CheckQuestSelection(addonSelectIconString, pickupQuest, answers)) + return; + } } var nextQuest = _questController.NextQuest; @@ -270,7 +290,7 @@ internal sealed class InteractionUiController : IDisposable List dialogueChoices = []; // levequest choices have some vague sort of priority - if (_questController.HasCurrentTaskMatching(out var interact) && + if (_questController.HasCurrentTaskExecutorMatching(out var interact) && interact.Quest != null && interact.InteractionType is EInteractionType.AcceptLeve or EInteractionType.CompleteLeve) { @@ -315,11 +335,30 @@ internal sealed class InteractionUiController : IDisposable } else { - var step = quest.FindSequence(currentQuest.Sequence)?.FindStep(currentQuest.Step); + QuestStep? step = null; + if (_territoryData.IsQuestBattleInstance(_clientState.TerritoryType)) + { + step = quest.FindSequence(currentQuest.Sequence)?.Steps + .FirstOrDefault(x => x.InteractionType == EInteractionType.SinglePlayerDuty); + } + + if (step == null) + step = quest.FindSequence(currentQuest.Sequence)?.FindStep(currentQuest.Step); + if (step == null) _logger.LogDebug("Ignoring current quest dialogue choices, no active step"); else + { dialogueChoices.AddRange(step.DialogueChoices.Select(x => new DialogueChoiceInfo(quest, x))); + if (step.PurchaseMenu != null) + dialogueChoices.Add(new DialogueChoiceInfo(quest, new DialogueChoice + { + Type = EDialogChoiceType.List, + ExcelSheet = step.PurchaseMenu.ExcelSheet, + Prompt = null, + Answer = step.PurchaseMenu.Key, + })); + } } // add all travel dialogue choices @@ -399,6 +438,27 @@ internal sealed class InteractionUiController : IDisposable if (dialogueChoice.Type != EDialogChoiceType.List) continue; + if (dialogueChoice.SpecialCondition == "NoDutyActions") + { + try + { + unsafe + { + ContentDirector* contentDirector = EventFramework.Instance()->GetContentDirector(); + if (contentDirector != null && contentDirector->DutyActionManager.ActionsPresent) + { + _logger.LogInformation("NoDutyActions: actions present, skipping dialogue choice"); + continue; + } + } + } + catch (Exception ex) + { + _logger.LogError(ex, "Failed to check for duty actions"); + continue; + } + } + if (dialogueChoice.Answer == null) { _logger.LogDebug("Ignoring entry in DialogueChoices, no answer"); @@ -413,19 +473,19 @@ internal sealed class InteractionUiController : IDisposable continue; } - string? excelPrompt = ResolveReference(quest, dialogueChoice.ExcelSheet, dialogueChoice.Prompt, false) - ?.GetString(); + StringOrRegex? excelPrompt = ResolveReference(quest, dialogueChoice.ExcelSheet, dialogueChoice.Prompt, + dialogueChoice.PromptIsRegularExpression); StringOrRegex? excelAnswer = ResolveReference(quest, dialogueChoice.ExcelSheet, dialogueChoice.Answer, dialogueChoice.AnswerIsRegularExpression); - if (actualPrompt == null && !string.IsNullOrEmpty(excelPrompt)) + if (actualPrompt == null && excelPrompt != null) { _logger.LogInformation("Unexpected excelPrompt: {ExcelPrompt}", excelPrompt); continue; } if (actualPrompt != null && - (excelPrompt == null || !GameFunctions.GameStringEquals(actualPrompt, excelPrompt))) + (excelPrompt == null || !IsMatch(actualPrompt, excelPrompt))) { _logger.LogInformation("Unexpected excelPrompt: {ExcelPrompt}, actualPrompt: {ActualPrompt}", excelPrompt, actualPrompt); @@ -501,9 +561,16 @@ internal sealed class InteractionUiController : IDisposable return; _logger.LogTrace("Prompt: '{Prompt}'", actualPrompt); + if (_shopController.IsAutoBuyEnabled && _shopController.IsAwaitingYesNo) + { + addonSelectYesno->AtkUnitBase.FireCallbackInt(0); + _shopController.IsAwaitingYesNo = false; + return; + } + var director = UIState.Instance()->DirectorTodo.Director; - if (director != null && director->EventHandlerInfo != null && - director->EventHandlerInfo->EventId.ContentId == EventHandlerType.GatheringLeveDirector && + if (director != null && + director->Info.EventId.ContentId == EventHandlerType.GatheringLeveDirector && director->Sequence == 254) { // just close the dialogue for 'do you want to return to next settlement', should prolly be different for @@ -582,9 +649,9 @@ internal sealed class InteractionUiController : IDisposable continue; } - string? excelPrompt = ResolveReference(quest, dialogueChoice.ExcelSheet, dialogueChoice.Prompt, false) - ?.GetString(); - if (excelPrompt == null || !GameFunctions.GameStringEquals(actualPrompt, excelPrompt)) + StringOrRegex? excelPrompt = ResolveReference(quest, dialogueChoice.ExcelSheet, dialogueChoice.Prompt, + dialogueChoice.PromptIsRegularExpression); + if (excelPrompt == null || !IsMatch(actualPrompt, excelPrompt)) { _logger.LogInformation("Unexpected excelPrompt: {ExcelPrompt}, actualPrompt: {ActualPrompt}", excelPrompt, actualPrompt); @@ -643,9 +710,9 @@ internal sealed class InteractionUiController : IDisposable step.TargetTerritoryId); if (step != null && (step.TerritoryId != _clientState.TerritoryType || step.TargetTerritoryId == null) && - step.RequiredGatheredItems.Count > 0) + step.InteractionType == EInteractionType.Gather) { - if (_gatheringData.TryGetGatheringPointId(step.RequiredGatheredItems[0].ItemId, + if (_gatheringData.TryGetGatheringPointId(step.ItemsToGather[0].ItemId, (EClassJob?)_clientState.LocalPlayer?.ClassJob.Id ?? EClassJob.Adventurer, out GatheringPointId? gatheringPointId) && _gatheringPointRegistry.TryGetGatheringPoint(gatheringPointId, out GatheringRoot? root)) @@ -784,7 +851,7 @@ internal sealed class InteractionUiController : IDisposable private void TeleportTownPostSetup(AddonEvent type, AddonArgs args) { if (ShouldHandleUiInteractions && - _questController.HasCurrentTaskMatching(out AethernetShortcut.UseAethernetShortcut? aethernetShortcut) && + _questController.HasCurrentTaskMatching(out AethernetShortcut.Task? aethernetShortcut) && aethernetShortcut.From.IsFirmamentAetheryte()) { // this might be better via atkvalues; but this works for now diff --git a/Questionable/Controller/GameUi/ShopController.cs b/Questionable/Controller/GameUi/ShopController.cs new file mode 100644 index 00000000..7c45e3cf --- /dev/null +++ b/Questionable/Controller/GameUi/ShopController.cs @@ -0,0 +1,156 @@ +using System; +using System.Linq; +using System.Numerics; +using Dalamud.Plugin.Services; +using FFXIVClientStructs.FFXIV.Component.GUI; +using LLib.GameUI; +using LLib.Shop; +using LLib.Shop.Model; +using Microsoft.Extensions.Logging; +using Questionable.Model.Questing; +using ValueType = FFXIVClientStructs.FFXIV.Component.GUI.ValueType; + +namespace Questionable.Controller.GameUi; + +internal sealed class ShopController : IDisposable, IShopWindow +{ + private readonly QuestController _questController; + private readonly IGameGui _gameGui; + private readonly IFramework _framework; + private readonly RegularShopBase _shop; + private readonly ILogger _logger; + + public ShopController(QuestController questController, IGameGui gameGui, IAddonLifecycle addonLifecycle, + IFramework framework, ILogger logger, IPluginLog pluginLog) + { + _questController = questController; + _gameGui = gameGui; + _framework = framework; + _shop = new RegularShopBase(this, "Shop", pluginLog, gameGui, addonLifecycle); + _logger = logger; + + _framework.Update += FrameworkUpdate; + } + + public bool IsEnabled => _questController.IsRunning; + public bool IsOpen { get; set; } + public bool IsAutoBuyEnabled => _shop.AutoBuyEnabled; + + public bool IsAwaitingYesNo + { + get { return _shop.IsAwaitingYesNo; } + set { _shop.IsAwaitingYesNo = value; } + } + + public Vector2? Position { get; set; } // actual implementation doesn't matter, not a real window + + public void Dispose() + { + _framework.Update -= FrameworkUpdate; + _shop.Dispose(); + } + + private void FrameworkUpdate(IFramework framework) + { + if (IsOpen && _shop.ItemForSale != null) + { + if (_shop.PurchaseState != null) + { + _shop.HandleNextPurchaseStep(); + } + else + { + var currentStep = FindCurrentStep(); + if (currentStep == null || currentStep.InteractionType != EInteractionType.PurchaseItem) + return; + + int missingItems = Math.Max(0, + currentStep.ItemCount.GetValueOrDefault() - (int)_shop.ItemForSale.OwnedItems); + int toPurchase = Math.Min(_shop.GetMaxItemsToPurchase(), missingItems); + if (toPurchase > 0) + { + _logger.LogDebug("Auto-buying {MissingItems} {ItemName}", missingItems, _shop.ItemForSale.ItemName); + _shop.StartAutoPurchase(missingItems); + _shop.HandleNextPurchaseStep(); + } + else + _shop.CancelAutoPurchase(); + } + } + } + + public int GetCurrencyCount() => _shop.GetItemCount(1); // TODO: support other currencies + + private QuestStep? FindCurrentStep() + { + var currentQuest = _questController.CurrentQuest; + QuestSequence? currentSequence = currentQuest?.Quest.FindSequence(currentQuest.Sequence); + return currentSequence?.FindStep(currentQuest?.Step ?? 0); + } + + public unsafe void UpdateShopStock(AtkUnitBase* addon) + { + var currentStep = FindCurrentStep(); + if (currentStep == null || currentStep.InteractionType != EInteractionType.PurchaseItem) + { + _shop.ItemForSale = null; + return; + } + + if (addon->AtkValuesCount != 625) + { + _logger.LogError("Unexpected amount of atkvalues for Shop addon ({AtkValueCount})", addon->AtkValuesCount); + _shop.ItemForSale = null; + return; + } + + var atkValues = addon->AtkValues; + + // Check if on 'Current Stock' tab? + if (atkValues[0].UInt != 0) + { + _shop.ItemForSale = null; + return; + } + + uint itemCount = atkValues[2].UInt; + if (itemCount == 0) + { + _shop.ItemForSale = null; + return; + } + + _shop.ItemForSale = Enumerable.Range(0, (int)itemCount) + .Select(i => new ItemForSale + { + Position = i, + ItemName = atkValues[14 + i].ReadAtkString(), + Price = atkValues[75 + i].UInt, + OwnedItems = atkValues[136 + i].UInt, + ItemId = atkValues[441 + i].UInt, + }) + .FirstOrDefault(x => x.ItemId == currentStep.ItemId); + } + + public unsafe void TriggerPurchase(AtkUnitBase* addonShop, int buyNow) + { + var buyItem = stackalloc AtkValue[] + { + new() { Type = ValueType.Int, Int = 0 }, + new() { Type = ValueType.Int, Int = _shop.ItemForSale!.Position }, + new() { Type = ValueType.Int, Int = buyNow }, + new() { Type = 0, Int = 0 } + }; + addonShop->FireCallback(4, buyItem); + } + + public void SaveExternalPluginState() + { + } + + public unsafe void RestoreExternalPluginState() + { + if (_gameGui.TryGetAddonByName("Shop", out AtkUnitBase* addonShop)) + addonShop->FireCallbackInt(-1); + } +} diff --git a/Questionable/Controller/GatheringController.cs b/Questionable/Controller/GatheringController.cs index 36a09a9f..8c7dedd4 100644 --- a/Questionable/Controller/GatheringController.cs +++ b/Questionable/Controller/GatheringController.cs @@ -13,16 +13,13 @@ using FFXIVClientStructs.FFXIV.Client.Game.Event; using FFXIVClientStructs.FFXIV.Client.Game.UI; using LLib; using Lumina.Excel.GeneratedSheets; -using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Questionable.Controller.Steps; -using Questionable.Controller.Steps.Common; using Questionable.Controller.Steps.Gathering; using Questionable.Controller.Steps.Interactions; using Questionable.Controller.Steps.Shared; using Questionable.External; using Questionable.Functions; -using Questionable.GatheringPaths; using Questionable.Model.Gathering; using Questionable.Model.Questing; using Mount = Questionable.Controller.Steps.Common.Mount; @@ -32,26 +29,18 @@ namespace Questionable.Controller; internal sealed unsafe class GatheringController : MiniTaskController { private readonly MovementController _movementController; - private readonly MoveTo.Factory _moveFactory; - private readonly Mount.Factory _mountFactory; - private readonly Interact.Factory _interactFactory; private readonly GatheringPointRegistry _gatheringPointRegistry; private readonly GameFunctions _gameFunctions; private readonly NavmeshIpc _navmeshIpc; private readonly IObjectTable _objectTable; private readonly ICondition _condition; - private readonly ILoggerFactory _loggerFactory; - private readonly IGameGui _gameGui; - private readonly IClientState _clientState; + private readonly ILogger _logger; private readonly Regex _revisitRegex; private CurrentRequest? _currentRequest; public GatheringController( MovementController movementController, - MoveTo.Factory moveFactory, - Mount.Factory mountFactory, - Interact.Factory interactFactory, GatheringPointRegistry gatheringPointRegistry, GameFunctions gameFunctions, NavmeshIpc navmeshIpc, @@ -59,25 +48,18 @@ internal sealed unsafe class GatheringController : MiniTaskController logger, ICondition condition, + IServiceProvider serviceProvider, IDataManager dataManager, - ILoggerFactory loggerFactory, - IGameGui gameGui, - IClientState clientState, IPluginLog pluginLog) - : base(chatGui, logger) + : base(chatGui, condition, serviceProvider, dataManager, logger) { _movementController = movementController; - _moveFactory = moveFactory; - _mountFactory = mountFactory; - _interactFactory = interactFactory; _gatheringPointRegistry = gatheringPointRegistry; _gameFunctions = gameFunctions; _navmeshIpc = navmeshIpc; _objectTable = objectTable; _condition = condition; - _loggerFactory = loggerFactory; - _gameGui = gameGui; - _clientState = clientState; + _logger = logger; _revisitRegex = dataManager.GetRegex(5574, x => x.Text, pluginLog) ?? throw new InvalidDataException("No regex found for revisit message"); @@ -129,7 +111,7 @@ internal sealed unsafe class GatheringController : MiniTaskController 0) + if (!_taskQueue.AllTasksComplete) return; var director = UIState.Instance()->DirectorTodo.Director; - if (director != null && director->EventHandlerInfo != null && - director->EventHandlerInfo->EventId.ContentId == EventHandlerType.GatheringLeveDirector) + if (director != null && director->Info.EventId.ContentId == EventHandlerType.GatheringLeveDirector) { if (director->Sequence == 254) return; @@ -168,7 +148,7 @@ internal sealed unsafe class GatheringController : MiniTaskController())); - _taskQueue.Enqueue(_interactFactory.Interact(currentNode.DataId, null, EInteractionType.InternalGather, true)); + _taskQueue.Enqueue(new MoveToLandingLocation.Task(territoryId, fly, currentNode)); + _taskQueue.Enqueue(new Mount.UnmountTask()); + _taskQueue.Enqueue(new Interact.Task(currentNode.DataId, null, EInteractionType.Gather, true)); QueueGatherNode(currentNode); } @@ -201,12 +180,10 @@ internal sealed unsafe class GatheringController : MiniTaskController())); + _taskQueue.Enqueue(new DoGather.Task(_currentRequest!.Data, currentNode, revisitRequired)); if (_currentRequest.Data.Collectability > 0) { - _taskQueue.Enqueue(new DoGatherCollectable(_currentRequest.Data, currentNode, revisitRequired, this, - _gameFunctions, _clientState, _gameGui, _loggerFactory.CreateLogger())); + _taskQueue.Enqueue(new DoGatherCollectable.Task(_currentRequest.Data, currentNode, revisitRequired)); } } } @@ -267,8 +244,8 @@ internal sealed unsafe class GatheringController : MiniTaskController GetRemainingTaskNames() { - if (_currentTask != null) - return [_currentTask.ToString() ?? "?", .. base.GetRemainingTaskNames()]; + if (_taskQueue.CurrentTaskExecutor?.CurrentTask is { } currentTask) + return [currentTask.ToString() ?? "?", .. base.GetRemainingTaskNames()]; else return base.GetRemainingTaskNames(); } @@ -277,10 +254,10 @@ internal sealed unsafe class GatheringController : MiniTaskController(stream)!; } - private void LoadFromDirectory(DirectoryInfo directory, LogLevel logLevel = LogLevel.Information) + private void LoadFromDirectory(DirectoryInfo directory) { if (!directory.Exists) { @@ -110,7 +109,6 @@ internal sealed class GatheringPointRegistry : IDisposable return; } - _logger.Log(logLevel, "Loading gathering points from {DirectoryName}", directory); foreach (FileInfo fileInfo in directory.GetFiles("*.json")) { try @@ -125,7 +123,7 @@ internal sealed class GatheringPointRegistry : IDisposable } foreach (DirectoryInfo childDirectory in directory.GetDirectories()) - LoadFromDirectory(childDirectory, logLevel); + LoadFromDirectory(childDirectory); } private static GatheringPointId? ExtractGatheringPointIdFromName(string resourceName) diff --git a/Questionable/Controller/MiniTaskController.cs b/Questionable/Controller/MiniTaskController.cs index 63dfba10..dfa0bfc9 100644 --- a/Questionable/Controller/MiniTaskController.cs +++ b/Questionable/Controller/MiniTaskController.cs @@ -1,39 +1,58 @@ using System; using System.Collections.Generic; using System.Linq; +using Dalamud.Game.ClientState.Conditions; +using Dalamud.Game.Text.SeStringHandling; using Dalamud.Plugin.Services; +using LLib; +using Lumina.Excel.GeneratedSheets; +using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Questionable.Controller.Steps; +using Questionable.Controller.Steps.Interactions; using Questionable.Controller.Steps.Shared; +using Questionable.Functions; +using Questionable.Model.Questing; +using Mount = Questionable.Controller.Steps.Common.Mount; namespace Questionable.Controller; internal abstract class MiniTaskController { - protected readonly IChatGui _chatGui; - protected readonly ILogger _logger; + protected readonly TaskQueue _taskQueue = new(); - protected readonly Queue _taskQueue = new(); - protected ITask? _currentTask; + private readonly IChatGui _chatGui; + private readonly ICondition _condition; + private readonly IServiceProvider _serviceProvider; + private readonly ILogger _logger; - public MiniTaskController(IChatGui chatGui, ILogger logger) + private readonly string _actionCanceledText; + + protected MiniTaskController(IChatGui chatGui, ICondition condition, IServiceProvider serviceProvider, + IDataManager dataManager, ILogger logger) { _chatGui = chatGui; _logger = logger; + _serviceProvider = serviceProvider; + _condition = condition; + + _actionCanceledText = dataManager.GetString(1314, x => x.Text)!; } protected virtual void UpdateCurrentTask() { - if (_currentTask == null) + if (_taskQueue.CurrentTaskExecutor == null) { if (_taskQueue.TryDequeue(out ITask? upcomingTask)) { try { _logger.LogInformation("Starting task {TaskName}", upcomingTask.ToString()); - if (upcomingTask.Start()) + ITaskExecutor taskExecutor = + _serviceProvider.GetRequiredKeyedService(upcomingTask.GetType()); + if (taskExecutor.Start(upcomingTask)) { - _currentTask = upcomingTask; + _taskQueue.CurrentTaskExecutor = taskExecutor; return; } else @@ -58,13 +77,20 @@ internal abstract class MiniTaskController ETaskResult result; try { - result = _currentTask.Update(); + if (_taskQueue.CurrentTaskExecutor.WasInterrupted()) + { + InterruptQueueWithCombat(); + return; + } + + result = _taskQueue.CurrentTaskExecutor.Update(); } catch (Exception e) { - _logger.LogError(e, "Failed to update task {TaskName}", _currentTask.ToString()); + _logger.LogError(e, "Failed to update task {TaskName}", + _taskQueue.CurrentTaskExecutor.CurrentTask.ToString()); _chatGui.PrintError( - $"[Questionable] Failed to update task '{_currentTask}', please check /xllog for details."); + $"[Questionable] Failed to update task '{_taskQueue.CurrentTaskExecutor.CurrentTask}', please check /xllog for details."); Stop("Task failed to update"); return; } @@ -76,14 +102,17 @@ internal abstract class MiniTaskController case ETaskResult.SkipRemainingTasksForStep: _logger.LogInformation("{Task} → {Result}, skipping remaining tasks for step", - _currentTask, result); - _currentTask = null; + _taskQueue.CurrentTaskExecutor.CurrentTask, result); + _taskQueue.CurrentTaskExecutor = null; while (_taskQueue.TryDequeue(out ITask? nextTask)) { - if (nextTask is ILastTask or GatheringRequiredItems.SkipMarker) + if (nextTask is ILastTask or Gather.SkipMarker) { - _currentTask = nextTask; + ITaskExecutor taskExecutor = + _serviceProvider.GetRequiredKeyedService(nextTask.GetType()); + taskExecutor.Start(nextTask); + _taskQueue.CurrentTaskExecutor = taskExecutor; return; } } @@ -92,27 +121,27 @@ internal abstract class MiniTaskController case ETaskResult.TaskComplete: _logger.LogInformation("{Task} → {Result}, remaining tasks: {RemainingTaskCount}", - _currentTask, result, _taskQueue.Count); + _taskQueue.CurrentTaskExecutor.CurrentTask, result, _taskQueue.RemainingTasks.Count()); - OnTaskComplete(_currentTask); + OnTaskComplete(_taskQueue.CurrentTaskExecutor.CurrentTask); - _currentTask = null; + _taskQueue.CurrentTaskExecutor = null; // handled in next update return; case ETaskResult.NextStep: - _logger.LogInformation("{Task} → {Result}", _currentTask, result); + _logger.LogInformation("{Task} → {Result}", _taskQueue.CurrentTaskExecutor.CurrentTask, result); - var lastTask = (ILastTask)_currentTask; - _currentTask = null; + var lastTask = (ILastTask)_taskQueue.CurrentTaskExecutor.CurrentTask; + _taskQueue.CurrentTaskExecutor = null; OnNextStep(lastTask); return; case ETaskResult.End: - _logger.LogInformation("{Task} → {Result}", _currentTask, result); - _currentTask = null; + _logger.LogInformation("{Task} → {Result}", _taskQueue.CurrentTaskExecutor.CurrentTask, result); + _taskQueue.CurrentTaskExecutor = null; Stop("Task end"); return; } @@ -124,11 +153,49 @@ internal abstract class MiniTaskController protected virtual void OnNextStep(ILastTask task) { - } public abstract void Stop(string label); public virtual IList GetRemainingTaskNames() => - _taskQueue.Select(x => x.ToString() ?? "?").ToList(); + _taskQueue.RemainingTasks.Select(x => x.ToString() ?? "?").ToList(); + + public void InterruptQueueWithCombat() + { + _logger.LogWarning("Interrupted, attempting to resolve (if in combat)"); + if (_condition[ConditionFlag.InCombat]) + { + List tasks = []; + if (_condition[ConditionFlag.Mounted]) + tasks.Add(new Mount.UnmountTask()); + + tasks.Add(Combat.Factory.CreateTask(null, false, EEnemySpawnType.QuestInterruption, [], [], [], null)); + tasks.Add(new WaitAtEnd.WaitDelay()); + _taskQueue.InterruptWith(tasks); + } + else + _taskQueue.InterruptWith([new WaitAtEnd.WaitDelay()]); + + _logger.LogInformation("Remaining tasks after interruption:"); + foreach (ITask task in _taskQueue.RemainingTasks) + _logger.LogInformation("- {TaskName}", task); + } + + public void OnErrorToast(ref SeString message, ref bool isHandled) + { + if (_taskQueue.CurrentTaskExecutor is IToastAware toastAware) + { + if (toastAware.OnErrorToast(message)) + { + isHandled = true; + } + } + + if (!isHandled) + { + if (GameFunctions.GameStringEquals(_actionCanceledText, message.TextValue) && + !_condition[ConditionFlag.InFlight]) + InterruptQueueWithCombat(); + } + } } diff --git a/Questionable/Controller/MovementController.cs b/Questionable/Controller/MovementController.cs index 6809c9f1..bf10142f 100644 --- a/Questionable/Controller/MovementController.cs +++ b/Questionable/Controller/MovementController.cs @@ -85,7 +85,7 @@ internal sealed class MovementController : IDisposable public bool IsPathfinding => _pathfindTask is { IsCompleted: false }; public DestinationData? Destination { get; set; } - public DateTime MovementStartedAt { get; private set; } = DateTime.MaxValue; + public DateTime MovementStartedAt { get; private set; } = DateTime.Now; public void Update() { @@ -120,7 +120,8 @@ internal sealed class MovementController : IDisposable { Destination.NavmeshCalculations++; Destination.PartialRoute.AddRange(navPoints); - _logger.LogInformation("Running navmesh recalculation with fudged point ({From} to {To})", navPoints.Last(), Destination.Position); + _logger.LogInformation("Running navmesh recalculation with fudged point ({From} to {To})", + navPoints.Last(), Destination.Position); _cancellationTokenSource = new(); _cancellationTokenSource.CancelAfter(TimeSpan.FromSeconds(30)); @@ -151,7 +152,7 @@ internal sealed class MovementController : IDisposable if (IsPathRunning && Destination != null) { - if (_gameFunctions.IsLoadingScreenVisible(false)) + if (_gameFunctions.IsLoadingScreenVisible()) { _logger.LogInformation("Stopping movement, loading screen visible"); Stop(); @@ -161,20 +162,12 @@ internal sealed class MovementController : IDisposable if (Destination is { IsFlying: true } && _condition[ConditionFlag.Swimming]) { _logger.LogInformation("Flying but swimming, restarting as non-flying path..."); - var dest = Destination; - Stop(); - - if (dest.UseNavmesh) - { - NavigateTo(EMovementType.None, dest.DataId, dest.Position, false, false, dest.StopDistance, - dest.IgnoreDistanceToObject); - } - else - { - NavigateTo(EMovementType.None, dest.DataId, [dest.Position], false, false, dest.StopDistance, - dest.IgnoreDistanceToObject); - } - + Restart(Destination); + } + else if (Destination is { IsFlying: true } && !_condition[ConditionFlag.Mounted]) + { + _logger.LogInformation("Flying but not mounted, restarting as non-flying path..."); + Restart(Destination); return; } @@ -260,6 +253,22 @@ internal sealed class MovementController : IDisposable } } + private void Restart(DestinationData destination) + { + Stop(); + + if (destination.UseNavmesh) + { + NavigateTo(EMovementType.None, destination.DataId, destination.Position, false, false, + destination.StopDistance, destination.IgnoreDistanceToObject); + } + else + { + NavigateTo(EMovementType.None, destination.DataId, [destination.Position], false, false, + destination.StopDistance, destination.IgnoreDistanceToObject); + } + } + private bool IsOnFlightPath(Vector3 p) { Vector3? pointOnFloor = _navmeshIpc.GetPointOnFloor(p, true); diff --git a/Questionable/Controller/NavigationOverrides/MovementOverrideController.cs b/Questionable/Controller/NavigationOverrides/MovementOverrideController.cs index 451c4bfc..7b7186ef 100644 --- a/Questionable/Controller/NavigationOverrides/MovementOverrideController.cs +++ b/Questionable/Controller/NavigationOverrides/MovementOverrideController.cs @@ -60,6 +60,7 @@ internal sealed class MovementOverrideController // leaving Idyllshire through the west gate attempts to run into this wall new BlacklistedPoint(399, new(-514.4851f, 149.63762f, -480.58087f), new(-528.78656f, 151.17374f, -473.07077f), 5, true), + new BlacklistedPoint(399, new(-534.5f, 153, -476.75f), new(-528.78656f, 151.17374f, -473.07077f), 5, true), // Idyllshire: random rocks in the north, passable one way only new BlacklistedPoint(478, new(14.5f, 215.25f, -101.5f), new(18.133032f, 215.44998f, -107.83075f), 5), diff --git a/Questionable/Controller/QuestController.cs b/Questionable/Controller/QuestController.cs index c4805bb0..594cac80 100644 --- a/Questionable/Controller/QuestController.cs +++ b/Questionable/Controller/QuestController.cs @@ -8,7 +8,9 @@ using Dalamud.Game.Gui.Toast; using Dalamud.Game.Text.SeStringHandling; using Dalamud.Plugin.Services; using FFXIVClientStructs.FFXIV.Client.Game; +using LLib; using LLib.GameData; +using Lumina.Excel.GeneratedSheets; using Microsoft.Extensions.Logging; using Questionable.Controller.Steps; using Questionable.Controller.Steps.Interactions; @@ -18,6 +20,8 @@ using Questionable.External; using Questionable.Functions; using Questionable.Model; using Questionable.Model.Questing; +using Quest = Questionable.Model.Quest; +using Mount = Questionable.Controller.Steps.Common.Mount; namespace Questionable.Controller; @@ -31,11 +35,13 @@ internal sealed class QuestController : MiniTaskController, IDi private readonly GatheringController _gatheringController; private readonly QuestRegistry _questRegistry; private readonly IKeyState _keyState; + private readonly IChatGui _chatGui; private readonly ICondition _condition; private readonly IToastGui _toastGui; private readonly Configuration _configuration; private readonly YesAlreadyIpc _yesAlreadyIpc; private readonly TaskCreator _taskCreator; + private readonly ILogger _logger; private readonly object _progressLock = new(); @@ -73,8 +79,10 @@ internal sealed class QuestController : MiniTaskController, IDi IToastGui toastGui, Configuration configuration, YesAlreadyIpc yesAlreadyIpc, - TaskCreator taskCreator) - : base(chatGui, logger) + TaskCreator taskCreator, + IServiceProvider serviceProvider, + IDataManager dataManager) + : base(chatGui, condition, serviceProvider, dataManager, logger) { _clientState = clientState; _gameFunctions = gameFunctions; @@ -84,11 +92,13 @@ internal sealed class QuestController : MiniTaskController, IDi _gatheringController = gatheringController; _questRegistry = questRegistry; _keyState = keyState; + _chatGui = chatGui; _condition = condition; _toastGui = toastGui; _configuration = configuration; _yesAlreadyIpc = yesAlreadyIpc; _taskCreator = taskCreator; + _logger = logger; _condition.ConditionChange += OnConditionChange; _toastGui.Toast += OnNormalToast; @@ -138,6 +148,8 @@ internal sealed class QuestController : MiniTaskController, IDi /// public QuestProgress? PendingQuest => _pendingQuest; + public List ManualPriorityQuests { get; } = []; + public string? DebugState { get; private set; } public void Reload() @@ -179,7 +191,7 @@ internal sealed class QuestController : MiniTaskController, IDi if (!_clientState.IsLoggedIn || _condition[ConditionFlag.Unconscious]) { - if (_currentTask != null || _taskQueue.Count > 0) + if (!_taskQueue.AllTasksComplete) { Stop("HP = 0"); _movementController.Stop(); @@ -189,7 +201,7 @@ internal sealed class QuestController : MiniTaskController, IDi } else if (_configuration.General.UseEscToCancelQuesting && _keyState[VirtualKey.ESCAPE]) { - if (_currentTask != null || _taskQueue.Count > 0) + if (!_taskQueue.AllTasksComplete) { Stop("ESC pressed"); _movementController.Stop(); @@ -198,12 +210,8 @@ internal sealed class QuestController : MiniTaskController, IDi } } - if (CurrentQuest != null && CurrentQuest.Quest.Root.TerritoryBlacklist.Contains(_clientState.TerritoryType)) - return; - if (AutomationType == EAutomationType.Automatic && - ((_currentTask == null && _taskQueue.Count == 0) || - _currentTask is WaitAtEnd.WaitQuestAccepted) + (_taskQueue.AllTasksComplete || _taskQueue.CurrentTaskExecutor?.CurrentTask is WaitAtEnd.WaitQuestAccepted) && CurrentQuest is { Sequence: 0, Step: 0 } or { Sequence: 0, Step: 255 } && DateTime.Now >= CurrentQuest.StepProgress.StartedAt.AddSeconds(15)) { @@ -274,8 +282,7 @@ internal sealed class QuestController : MiniTaskController, IDi questToRun = _nextQuest; currentSequence = _nextQuest.Sequence; // by definition, this should always be 0 if (_nextQuest.Step == 0 && - _currentTask == null && - _taskQueue.Count == 0 && + _taskQueue.AllTasksComplete && AutomationType == EAutomationType.Automatic) ExecuteNextStep(); } @@ -284,14 +291,19 @@ internal sealed class QuestController : MiniTaskController, IDi questToRun = _gatheringQuest; currentSequence = _gatheringQuest.Sequence; if (_gatheringQuest.Step == 0 && - _currentTask == null && - _taskQueue.Count == 0 && + _taskQueue.AllTasksComplete && AutomationType == EAutomationType.Automatic) ExecuteNextStep(); } else { - (ElementId? currentQuestId, currentSequence) = _questFunctions.GetCurrentQuest(); + (ElementId? currentQuestId, currentSequence) = + ManualPriorityQuests + .Where(x => _questFunctions.IsReadyToAcceptQuest(x.Id) || _questFunctions.IsQuestAccepted(x.Id)) + .Select(x => + ((ElementId?, byte)?)(x.Id, _questFunctions.GetQuestProgressInfo(x.Id)?.Sequence ?? 0)) + .FirstOrDefault() ?? + _questFunctions.GetCurrentQuest(); if (currentQuestId == null || currentQuestId.Value == 0) { if (_startedQuest != null) @@ -310,7 +322,8 @@ internal sealed class QuestController : MiniTaskController, IDi _logger.LogInformation("New quest: {QuestName}", quest.Info.Name); _startedQuest = new QuestProgress(quest, currentSequence); - if (_clientState.LocalPlayer!.Level < quest.Info.Level) + if (_clientState.LocalPlayer != null && + _clientState.LocalPlayer.Level < quest.Info.Level) { _logger.LogInformation( "Stopping automation, player level ({PlayerLevel}) < quest level ({QuestLevel}", @@ -383,7 +396,7 @@ internal sealed class QuestController : MiniTaskController, IDi if (questToRun.Step == 255) { DebugState = "Step completed"; - if (_currentTask != null || _taskQueue.Count > 0) + if (!_taskQueue.AllTasksComplete) CheckNextTasks("Step complete"); return; } @@ -456,10 +469,7 @@ internal sealed class QuestController : MiniTaskController, IDi private void ClearTasksInternal() { //_logger.LogDebug("Clearing task (internally)"); - _currentTask = null; - - if (_taskQueue.Count > 0) - _taskQueue.Clear(); + _taskQueue.Reset(); _yesAlreadyIpc.RestoreYesAlready(); _combatController.Stop("ClearTasksInternal"); @@ -620,13 +630,15 @@ internal sealed class QuestController : MiniTaskController, IDi public string ToStatString() { - return _currentTask == null ? $"- (+{_taskQueue.Count})" : $"{_currentTask} (+{_taskQueue.Count})"; + return _taskQueue.CurrentTaskExecutor?.CurrentTask is { } currentTask + ? $"{currentTask} (+{_taskQueue.RemainingTasks.Count()})" + : $"- (+{_taskQueue.RemainingTasks.Count()})"; } - public bool HasCurrentTaskMatching([NotNullWhen(true)] out T? task) - where T : class, ITask + public bool HasCurrentTaskExecutorMatching([NotNullWhen(true)] out T? task) + where T : class, ITaskExecutor { - if (_currentTask is T t) + if (_taskQueue.CurrentTaskExecutor is T t) { task = t; return true; @@ -638,7 +650,23 @@ internal sealed class QuestController : MiniTaskController, IDi } } - public bool IsRunning => _currentTask != null || _taskQueue.Count > 0; + public bool HasCurrentTaskMatching([NotNullWhen(true)] out T? task) + where T : class, ITask + { + if (_taskQueue.CurrentTaskExecutor?.CurrentTask is T t) + { + task = t; + return true; + } + else + { + task = null; + return false; + } + } + + public bool IsRunning => !_taskQueue.AllTasksComplete; + public TaskQueue TaskQueue => _taskQueue; public sealed class QuestProgress { @@ -678,19 +706,19 @@ internal sealed class QuestController : MiniTaskController, IDi { lock (_progressLock) { - if (_currentTask is ISkippableTask) - _currentTask = null; - else if (_currentTask != null) + if (_taskQueue.CurrentTaskExecutor?.CurrentTask is ISkippableTask) + _taskQueue.CurrentTaskExecutor = null; + else if (_taskQueue.CurrentTaskExecutor != null) { - _currentTask = null; - while (_taskQueue.Count > 0) + _taskQueue.CurrentTaskExecutor = null; + while (_taskQueue.TryPeek(out ITask? task)) { - var task = _taskQueue.Dequeue(); + _taskQueue.TryDequeue(out _); if (task is ISkippableTask) return; } - if (_taskQueue.Count == 0) + if (_taskQueue.AllTasksComplete) { Stop("Skip"); IncreaseStepCount(elementId, currentQuestSequence); @@ -706,7 +734,7 @@ internal sealed class QuestController : MiniTaskController, IDi public void SkipSimulatedTask() { - _currentTask = null; + _taskQueue.CurrentTaskExecutor = null; } public bool IsInterruptible() @@ -716,7 +744,13 @@ internal sealed class QuestController : MiniTaskController, IDi return false; var (currentQuest, type) = details.Value; - if (type != ECurrentQuestType.Normal) + if (type != ECurrentQuestType.Normal || currentQuest.Sequence == 0) + return false; + + if (ManualPriorityQuests.Contains(currentQuest.Quest)) + return false; + + if (currentQuest.Quest.Info.AlliedSociety != EAlliedSociety.None) return false; QuestSequence? currentSequence = currentQuest.Quest.FindSequence(currentQuest.Sequence); @@ -724,7 +758,9 @@ internal sealed class QuestController : MiniTaskController, IDi return false; QuestStep? currentStep = currentSequence?.FindStep(currentQuest.Step); - return currentStep?.AetheryteShortcut != null; + return currentStep?.AetheryteShortcut != null && + (currentStep.SkipConditions?.AetheryteShortcutIf?.QuestsCompleted.Count ?? 0) == 0 && + (currentStep.SkipConditions?.AetheryteShortcutIf?.QuestsAccepted.Count ?? 0) == 0; } public bool TryPickPriorityQuest() @@ -757,7 +793,7 @@ internal sealed class QuestController : MiniTaskController, IDi private void OnConditionChange(ConditionFlag flag, bool value) { - if (_currentTask is IConditionChangeAware conditionChangeAware) + if (_taskQueue.CurrentTaskExecutor is IConditionChangeAware conditionChangeAware) conditionChangeAware.OnConditionChange(flag, value); } @@ -766,17 +802,6 @@ internal sealed class QuestController : MiniTaskController, IDi _gatheringController.OnNormalToast(message); } - private void OnErrorToast(ref SeString message, ref bool isHandled) - { - if (_currentTask is IToastAware toastAware) - { - if (toastAware.OnErrorToast(message)) - { - isHandled = true; - } - } - } - public void Dispose() { _toastGui.ErrorToast -= OnErrorToast; diff --git a/Questionable/Controller/QuestRegistry.cs b/Questionable/Controller/QuestRegistry.cs index f1af0050..c948abe2 100644 --- a/Questionable/Controller/QuestRegistry.cs +++ b/Questionable/Controller/QuestRegistry.cs @@ -92,17 +92,24 @@ internal sealed class QuestRegistry foreach ((ElementId questId, QuestRoot questRoot) in AssemblyQuestLoader.GetQuests()) { - var questInfo = _questData.GetQuestInfo(questId); - if (questInfo is LeveInfo leveInfo) - _leveData.AddQuestSteps(leveInfo, questRoot); - Quest quest = new() + try { - Id = questId, - Root = questRoot, - Info = questInfo, - Source = Quest.ESource.Assembly, - }; - _quests[quest.Id] = quest; + var questInfo = _questData.GetQuestInfo(questId); + if (questInfo is LeveInfo leveInfo) + _leveData.AddQuestSteps(leveInfo, questRoot); + Quest quest = new() + { + Id = questId, + Root = questRoot, + Info = questInfo, + Source = Quest.ESource.Assembly, + }; + _quests[quest.Id] = quest; + } + catch (Exception e) + { + _logger.LogWarning("Not loading unknown quest {QuestId} from assembly: {Message}", questId, e.Message); + } } _logger.LogInformation("Loaded {Count} quests from assembly", _quests.Count); @@ -137,12 +144,13 @@ internal sealed class QuestRegistry private void ValidateQuests() { - _questValidator.Validate(_quests.Values.Where(x => x.Source != Quest.ESource.Assembly)); + _questValidator.Validate(_quests.Values.Where(x => x.Source != Quest.ESource.Assembly).ToList()); } private void LoadQuestFromStream(string fileName, Stream stream, Quest.ESource source) { - _logger.LogTrace("Loading quest from '{FileName}'", fileName); + if (source == Quest.ESource.UserDirectory) + _logger.LogTrace("Loading quest from '{FileName}'", fileName); ElementId? questId = ExtractQuestIdFromName(fileName); if (questId == null) return; @@ -173,7 +181,8 @@ internal sealed class QuestRegistry return; } - _logger.Log(logLevel, "Loading quests from {DirectoryName}", directory); + if (source == Quest.ESource.UserDirectory) + _logger.Log(logLevel, "Loading quests from {DirectoryName}", directory); foreach (FileInfo fileInfo in directory.GetFiles("*.json")) { try diff --git a/Questionable/Controller/Steps/Common/AbstractDelayedTask.cs b/Questionable/Controller/Steps/Common/AbstractDelayedTaskExecutor.cs similarity index 61% rename from Questionable/Controller/Steps/Common/AbstractDelayedTask.cs rename to Questionable/Controller/Steps/Common/AbstractDelayedTaskExecutor.cs index e4586fb8..f5e95ca4 100644 --- a/Questionable/Controller/Steps/Common/AbstractDelayedTask.cs +++ b/Questionable/Controller/Steps/Common/AbstractDelayedTaskExecutor.cs @@ -2,31 +2,33 @@ namespace Questionable.Controller.Steps.Common; -internal abstract class AbstractDelayedTask : ITask +internal abstract class AbstractDelayedTaskExecutor : TaskExecutor + where T : class, ITask { private DateTime _continueAt; - protected AbstractDelayedTask(TimeSpan delay) + protected AbstractDelayedTaskExecutor() + : this(TimeSpan.FromSeconds(5)) + { + } + + protected AbstractDelayedTaskExecutor(TimeSpan delay) { Delay = delay; } protected TimeSpan Delay { get; set; } - protected AbstractDelayedTask() - : this(TimeSpan.FromSeconds(5)) - { - } - - public bool Start() + protected sealed override bool Start() { + bool started = StartInternal(); _continueAt = DateTime.Now.Add(Delay); - return StartInternal(); + return started; } protected abstract bool StartInternal(); - public virtual ETaskResult Update() + public override ETaskResult Update() { if (_continueAt >= DateTime.Now) return ETaskResult.StillRunning; diff --git a/Questionable/Controller/Steps/Common/Mount.cs b/Questionable/Controller/Steps/Common/Mount.cs index 144de5ba..d9d38ae2 100644 --- a/Questionable/Controller/Steps/Common/Mount.cs +++ b/Questionable/Controller/Steps/Common/Mount.cs @@ -11,49 +11,38 @@ namespace Questionable.Controller.Steps.Common; internal static class Mount { - internal sealed class Factory( - GameFunctions gameFunctions, - ICondition condition, - TerritoryData territoryData, - IClientState clientState, - ILoggerFactory loggerFactory) + internal sealed record MountTask( + ushort TerritoryId, + EMountIf MountIf, + Vector3? Position = null) : ITask { - public ITask Mount(ushort territoryId, EMountIf mountIf, Vector3? position = null) - { - if (mountIf == EMountIf.AwayFromPosition) - ArgumentNullException.ThrowIfNull(position); + public Vector3? Position { get; } = MountIf == EMountIf.AwayFromPosition + ? Position ?? throw new ArgumentNullException(nameof(Position)) + : null; - return new MountTask(territoryId, mountIf, position, gameFunctions, condition, territoryData, clientState, - loggerFactory.CreateLogger()); - } + public bool ShouldRedoOnInterrupt() => true; - public ITask Unmount() - { - return new UnmountTask(condition, loggerFactory.CreateLogger(), gameFunctions); - } + public override string ToString() => "Mount"; } - private sealed class MountTask( - ushort territoryId, - EMountIf mountIf, - Vector3? position, + internal sealed class MountExecutor( GameFunctions gameFunctions, ICondition condition, TerritoryData territoryData, IClientState clientState, - ILogger logger) : ITask + ILogger logger) : TaskExecutor { private bool _mountTriggered; private DateTime _retryAt = DateTime.MinValue; - public bool Start() + protected override bool Start() { if (condition[ConditionFlag.Mounted]) return false; - if (!territoryData.CanUseMount(territoryId)) + if (!territoryData.CanUseMount(Task.TerritoryId)) { - logger.LogInformation("Can't use mount in current territory {Id}", territoryId); + logger.LogInformation("Can't use mount in current territory {Id}", Task.TerritoryId); return false; } @@ -63,11 +52,11 @@ internal static class Mount return false; } - if (mountIf == EMountIf.AwayFromPosition) + if (Task.MountIf == EMountIf.AwayFromPosition) { Vector3 playerPosition = clientState.LocalPlayer?.Position ?? Vector3.Zero; - float distance = System.Numerics.Vector3.Distance(playerPosition, position.GetValueOrDefault()); - if (territoryId == clientState.TerritoryType && distance < 30f && !Conditions.IsDiving) + float distance = System.Numerics.Vector3.Distance(playerPosition, Task.Position.GetValueOrDefault()); + if (Task.TerritoryId == clientState.TerritoryType && distance < 30f && !Conditions.IsDiving) { logger.LogInformation("Not using mount, as we're close to the target"); return false; @@ -75,10 +64,10 @@ internal static class Mount logger.LogInformation( "Want to use mount if away from destination ({Distance} yalms), trying (in territory {Id})...", - distance, territoryId); + distance, Task.TerritoryId); } else - logger.LogInformation("Want to use mount, trying (in territory {Id})...", territoryId); + logger.LogInformation("Want to use mount, trying (in territory {Id})...", Task.TerritoryId); if (!condition[ConditionFlag.InCombat]) { @@ -89,7 +78,7 @@ internal static class Mount return false; } - public ETaskResult Update() + public override ETaskResult Update() { if (_mountTriggered && !condition[ConditionFlag.Mounted] && DateTime.Now > _retryAt) { @@ -106,7 +95,9 @@ internal static class Mount return ETaskResult.TaskComplete; } - _mountTriggered = gameFunctions.Mount(); + ProgressContext = + InteractionProgressContext.FromActionUse(() => _mountTriggered = gameFunctions.Mount()); + _retryAt = DateTime.Now.AddSeconds(5); return ETaskResult.StillRunning; } @@ -115,17 +106,26 @@ internal static class Mount ? ETaskResult.TaskComplete : ETaskResult.StillRunning; } - - public override string ToString() => "Mount"; } - private sealed class UnmountTask(ICondition condition, ILogger logger, GameFunctions gameFunctions) - : ITask + internal sealed record UnmountTask : ITask + { + public bool ShouldRedoOnInterrupt() => true; + + public override string ToString() => "Unmount"; + } + + internal sealed class UnmountExecutor( + ICondition condition, + ILogger logger, + GameFunctions gameFunctions, + IClientState clientState) + : TaskExecutor { private bool _unmountTriggered; private DateTime _continueAt = DateTime.MinValue; - public bool Start() + protected override bool Start() { if (!condition[ConditionFlag.Mounted]) return false; @@ -143,11 +143,14 @@ internal static class Mount return true; } - public ETaskResult Update() + public override ETaskResult Update() { if (_continueAt >= DateTime.Now) return ETaskResult.StillRunning; + if (IsUnmounting()) + return ETaskResult.StillRunning; + if (!_unmountTriggered) { // if still flying, we still need to land @@ -172,7 +175,7 @@ internal static class Mount : ETaskResult.TaskComplete; } - public override string ToString() => "Unmount"; + private unsafe bool IsUnmounting() => **(byte**)(clientState.LocalPlayer!.Address + 1432) == 1; } public enum EMountIf diff --git a/Questionable/Controller/Steps/Common/NextQuest.cs b/Questionable/Controller/Steps/Common/NextQuest.cs index e7fd2b62..7f4b0261 100644 --- a/Questionable/Controller/Steps/Common/NextQuest.cs +++ b/Questionable/Controller/Steps/Common/NextQuest.cs @@ -7,7 +7,7 @@ namespace Questionable.Controller.Steps.Common; internal static class NextQuest { - internal sealed class Factory(QuestRegistry questRegistry, QuestController questController, QuestFunctions questFunctions, ILoggerFactory loggerFactory) : SimpleTaskFactory + internal sealed class Factory(QuestFunctions questFunctions) : SimpleTaskFactory { public override ITask? CreateTask(Quest quest, QuestSequence sequence, QuestStep step) { @@ -20,34 +20,46 @@ internal static class NextQuest if (step.NextQuestId == quest.Id) return null; - return new SetQuest(step.NextQuestId, quest.Id, questRegistry, questController, questFunctions, loggerFactory.CreateLogger()); + // probably irrelevant, since pick up is handled elsewhere (and, in particular, checks for aetherytes and stuff) + if (questFunctions.GetPriorityQuests().Contains(step.NextQuestId)) + return null; + + return new SetQuestTask(step.NextQuestId, quest.Id); } } - private sealed class SetQuest(ElementId nextQuestId, ElementId currentQuestId, QuestRegistry questRegistry, QuestController questController, QuestFunctions questFunctions, ILogger logger) : ITask + internal sealed record SetQuestTask(ElementId NextQuestId, ElementId CurrentQuestId) : ITask { - public bool Start() + public bool ShouldRedoOnInterrupt() => true; + public override string ToString() => $"SetNextQuest({NextQuestId})"; + } + + internal sealed class NextQuestExecutor( + QuestRegistry questRegistry, + QuestController questController, + QuestFunctions questFunctions, + ILogger logger) : TaskExecutor + { + protected override bool Start() { - if (questFunctions.IsQuestLocked(nextQuestId, currentQuestId)) + if (questFunctions.IsQuestLocked(Task.NextQuestId, Task.CurrentQuestId)) { - logger.LogInformation("Can't set next quest to {QuestId}, quest is locked", nextQuestId); + logger.LogInformation("Can't set next quest to {QuestId}, quest is locked", Task.NextQuestId); } - else if (questRegistry.TryGetQuest(nextQuestId, out Quest? quest)) + else if (questRegistry.TryGetQuest(Task.NextQuestId, out Quest? quest)) { - logger.LogInformation("Setting next quest to {QuestId}: '{QuestName}'", nextQuestId, quest.Info.Name); + logger.LogInformation("Setting next quest to {QuestId}: '{QuestName}'", Task.NextQuestId, quest.Info.Name); questController.SetNextQuest(quest); } else { - logger.LogInformation("Next quest with id {QuestId} not found", nextQuestId); + logger.LogInformation("Next quest with id {QuestId} not found", Task.NextQuestId); questController.SetNextQuest(null); } return true; } - public ETaskResult Update() => ETaskResult.TaskComplete; - - public override string ToString() => $"SetNextQuest({nextQuestId})"; + public override ETaskResult Update() => ETaskResult.TaskComplete; } } diff --git a/Questionable/Controller/Steps/Common/WaitConditionTask.cs b/Questionable/Controller/Steps/Common/WaitConditionTask.cs index 762904ff..367fdfec 100644 --- a/Questionable/Controller/Steps/Common/WaitConditionTask.cs +++ b/Questionable/Controller/Steps/Common/WaitConditionTask.cs @@ -2,22 +2,28 @@ namespace Questionable.Controller.Steps.Common; -internal sealed class WaitConditionTask(Func predicate, string description) : ITask +internal static class WaitCondition { - private DateTime _continueAt = DateTime.MaxValue; - - public bool Start() => !predicate(); - - public ETaskResult Update() + internal sealed record Task(Func Predicate, string Description) : ITask { - if (_continueAt == DateTime.MaxValue) - { - if (predicate()) - _continueAt = DateTime.Now.AddSeconds(0.5); - } - - return DateTime.Now >= _continueAt ? ETaskResult.TaskComplete : ETaskResult.StillRunning; + public override string ToString() => Description; } - public override string ToString() => description; + internal sealed class WaitConditionExecutor : TaskExecutor + { + private DateTime _continueAt = DateTime.MaxValue; + + protected override bool Start() => !Task.Predicate(); + + public override ETaskResult Update() + { + if (_continueAt == DateTime.MaxValue) + { + if (Task.Predicate()) + _continueAt = DateTime.Now.AddSeconds(0.5); + } + + return DateTime.Now >= _continueAt ? ETaskResult.TaskComplete : ETaskResult.StillRunning; + } + } } diff --git a/Questionable/Controller/Steps/Gathering/DoGather.cs b/Questionable/Controller/Steps/Gathering/DoGather.cs index bc405737..169b0b7c 100644 --- a/Questionable/Controller/Steps/Gathering/DoGather.cs +++ b/Questionable/Controller/Steps/Gathering/DoGather.cs @@ -15,227 +15,231 @@ using Questionable.Model.Questing; namespace Questionable.Controller.Steps.Gathering; -internal sealed class DoGather( - GatheringController.GatheringRequest currentRequest, - GatheringNode currentNode, - bool revisitRequired, - GatheringController gatheringController, - GameFunctions gameFunctions, - IGameGui gameGui, - IClientState clientState, - ICondition condition, - ILogger logger) : ITask, IRevisitAware +internal static class DoGather { - private const uint StatusGatheringRateUp = 218; - - private bool _revisitTriggered; - private bool _wasGathering; - private SlotInfo? _slotToGather; - private Queue? _actionQueue; - - public bool Start() => true; - - public unsafe ETaskResult Update() + internal sealed record Task( + GatheringController.GatheringRequest Request, + GatheringNode Node, + bool RevisitRequired) : ITask, IRevisitAware { - if (revisitRequired && !_revisitTriggered) + public bool RevisitTriggered { get; private set; } + + public void OnRevisit() => RevisitTriggered = true; + + public override string ToString() => $"DoGather{(RevisitRequired ? " if revist" : "")}"; + } + + internal sealed class GatherExecutor( + GatheringController gatheringController, + GameFunctions gameFunctions, + IGameGui gameGui, + IClientState clientState, + ICondition condition, + ILogger logger) : TaskExecutor + { + private const uint StatusGatheringRateUp = 218; + + private bool _wasGathering; + private SlotInfo? _slotToGather; + private Queue? _actionQueue; + + protected override bool Start() => true; + + public override unsafe ETaskResult Update() { - logger.LogInformation("No revisit"); - return ETaskResult.TaskComplete; - } - - if (gatheringController.HasNodeDisappeared(currentNode)) - { - logger.LogInformation("Node disappeared"); - return ETaskResult.TaskComplete; - } - - if (gameFunctions.GetFreeInventorySlots() == 0) - throw new TaskException("Inventory full"); - - if (condition[ConditionFlag.Gathering]) - { - if (gameGui.TryGetAddonByName("GatheringMasterpiece", out AtkUnitBase* _)) - return ETaskResult.TaskComplete; - - _wasGathering = true; - - if (gameGui.TryGetAddonByName("Gathering", out AddonGathering* addonGathering)) + if (Task is { RevisitRequired: true, RevisitTriggered: false }) { - if (gatheringController.HasRequestedItems()) + logger.LogInformation("No revisit"); + return ETaskResult.TaskComplete; + } + + if (gatheringController.HasNodeDisappeared(Task.Node)) + { + logger.LogInformation("Node disappeared"); + return ETaskResult.TaskComplete; + } + + if (gameFunctions.GetFreeInventorySlots() == 0) + throw new TaskException("Inventory full"); + + if (condition[ConditionFlag.Gathering]) + { + if (gameGui.TryGetAddonByName("GatheringMasterpiece", out AtkUnitBase* _)) + return ETaskResult.TaskComplete; + + _wasGathering = true; + + if (gameGui.TryGetAddonByName("Gathering", out AddonGathering* addonGathering)) { - addonGathering->FireCallbackInt(-1); - } - else - { - var slots = ReadSlots(addonGathering); - if (currentRequest.Collectability > 0) + if (gatheringController.HasRequestedItems()) { - var slot = slots.Single(x => x.ItemId == currentRequest.ItemId); - addonGathering->FireCallbackInt(slot.Index); + addonGathering->FireCallbackInt(-1); } else { - NodeCondition nodeCondition = new NodeCondition( - addonGathering->AtkValues[110].UInt, - addonGathering->AtkValues[111].UInt); - - if (_actionQueue != null && _actionQueue.TryPeek(out EAction nextAction)) + var slots = ReadSlots(addonGathering); + if (Task.Request.Collectability > 0) { - if (gameFunctions.UseAction(nextAction)) + var slot = slots.Single(x => x.ItemId == Task.Request.ItemId); + addonGathering->FireCallbackInt(slot.Index); + } + else + { + NodeCondition nodeCondition = new NodeCondition( + addonGathering->AtkValues[110].UInt, + addonGathering->AtkValues[111].UInt); + + if (_actionQueue != null && _actionQueue.TryPeek(out EAction nextAction)) { - logger.LogInformation("Used action {Action} on node", nextAction); - _actionQueue.Dequeue(); + if (gameFunctions.UseAction(nextAction)) + { + logger.LogInformation("Used action {Action} on node", nextAction); + _actionQueue.Dequeue(); + } + + return ETaskResult.StillRunning; } - return ETaskResult.StillRunning; - } - - _actionQueue = GetNextActions(nodeCondition, slots); - if (_actionQueue.Count == 0) - { - var slot = _slotToGather ?? slots.Single(x => x.ItemId == currentRequest.ItemId); - addonGathering->FireCallbackInt(slot.Index); + _actionQueue = GetNextActions(nodeCondition, slots); + if (_actionQueue.Count == 0) + { + var slot = _slotToGather ?? slots.Single(x => x.ItemId == Task.Request.ItemId); + addonGathering->FireCallbackInt(slot.Index); + } } } } } + + return _wasGathering && !condition[ConditionFlag.Gathering] + ? ETaskResult.TaskComplete + : ETaskResult.StillRunning; } - return _wasGathering && !condition[ConditionFlag.Gathering] - ? ETaskResult.TaskComplete - : ETaskResult.StillRunning; - } - - private unsafe List ReadSlots(AddonGathering* addonGathering) - { - var atkValues = addonGathering->AtkValues; - List slots = new List(); - for (int i = 0; i < 8; ++i) + private unsafe List ReadSlots(AddonGathering* addonGathering) { - // +8 = new item? - uint itemId = atkValues[i * 11 + 7].UInt; - if (itemId == 0) - continue; - - AtkComponentCheckBox* atkCheckbox = addonGathering->GatheredItemComponentCheckbox[i].Value; - - AtkTextNode* atkGatheringChance = atkCheckbox->UldManager.SearchNodeById(10)->GetAsAtkTextNode(); - if (!int.TryParse(atkGatheringChance->NodeText.ToString(), out int gatheringChance)) - gatheringChance = 0; - - AtkTextNode* atkBoonChance = atkCheckbox->UldManager.SearchNodeById(16)->GetAsAtkTextNode(); - if (!int.TryParse(atkBoonChance->NodeText.ToString(), out int boonChance)) - boonChance = 0; - - AtkComponentNode* atkImage = atkCheckbox->UldManager.SearchNodeById(31)->GetAsAtkComponentNode(); - AtkTextNode* atkQuantity = atkImage->Component->UldManager.SearchNodeById(7)->GetAsAtkTextNode(); - if (!atkQuantity->IsVisible() || !int.TryParse(atkQuantity->NodeText.ToString(), out int quantity)) - quantity = 1; - - var slot = new SlotInfo(i, itemId, gatheringChance, boonChance, quantity); - slots.Add(slot); - } - - return slots; - } - - [SuppressMessage("ReSharper", "UnusedParameter.Local")] - private Queue GetNextActions(NodeCondition nodeCondition, List slots) - { - //uint gp = clientState.LocalPlayer!.CurrentGp; - Queue actions = new(); - - if (!gameFunctions.HasStatus(StatusGatheringRateUp)) - { - // do we have an alternative item? only happens for 'evaluation' leve quests - if (currentRequest.AlternativeItemId != 0) + var atkValues = addonGathering->AtkValues; + List slots = new List(); + for (int i = 0; i < 8; ++i) { - var alternativeSlot = slots.Single(x => x.ItemId == currentRequest.AlternativeItemId); + // +8 = new item? + uint itemId = atkValues[i * 11 + 7].UInt; + if (itemId == 0) + continue; - if (alternativeSlot.GatheringChance == 100) - { - _slotToGather = alternativeSlot; - return actions; - } + AtkComponentCheckBox* atkCheckbox = addonGathering->GatheredItemComponentCheckbox[i].Value; - if (alternativeSlot.GatheringChance > 0) + AtkTextNode* atkGatheringChance = atkCheckbox->UldManager.SearchNodeById(10)->GetAsAtkTextNode(); + if (!int.TryParse(atkGatheringChance->NodeText.ToString(), out int gatheringChance)) + gatheringChance = 0; + + AtkTextNode* atkBoonChance = atkCheckbox->UldManager.SearchNodeById(16)->GetAsAtkTextNode(); + if (!int.TryParse(atkBoonChance->NodeText.ToString(), out int boonChance)) + boonChance = 0; + + AtkComponentNode* atkImage = atkCheckbox->UldManager.SearchNodeById(31)->GetAsAtkComponentNode(); + AtkTextNode* atkQuantity = atkImage->Component->UldManager.SearchNodeById(7)->GetAsAtkTextNode(); + if (!atkQuantity->IsVisible() || !int.TryParse(atkQuantity->NodeText.ToString(), out int quantity)) + quantity = 1; + + var slot = new SlotInfo(i, itemId, gatheringChance, boonChance, quantity); + slots.Add(slot); + } + + return slots; + } + + [SuppressMessage("ReSharper", "UnusedParameter.Local")] + private Queue GetNextActions(NodeCondition nodeCondition, List slots) + { + //uint gp = clientState.LocalPlayer!.CurrentGp; + Queue actions = new(); + + if (!gameFunctions.HasStatus(StatusGatheringRateUp)) + { + // do we have an alternative item? only happens for 'evaluation' leve quests + if (Task.Request.AlternativeItemId != 0) { - if (alternativeSlot.GatheringChance >= 95 && - CanUseAction(EAction.SharpVision1, EAction.FieldMastery1)) + var alternativeSlot = slots.Single(x => x.ItemId == Task.Request.AlternativeItemId); + + if (alternativeSlot.GatheringChance == 100) { _slotToGather = alternativeSlot; + return actions; + } + + if (alternativeSlot.GatheringChance > 0) + { + if (alternativeSlot.GatheringChance >= 95 && + CanUseAction(EAction.SharpVision1, EAction.FieldMastery1)) + { + _slotToGather = alternativeSlot; + actions.Enqueue(PickAction(EAction.SharpVision1, EAction.FieldMastery1)); + return actions; + } + + if (alternativeSlot.GatheringChance >= 85 && + CanUseAction(EAction.SharpVision2, EAction.FieldMastery2)) + { + _slotToGather = alternativeSlot; + actions.Enqueue(PickAction(EAction.SharpVision2, EAction.FieldMastery2)); + return actions; + } + + if (alternativeSlot.GatheringChance >= 50 && + CanUseAction(EAction.SharpVision3, EAction.FieldMastery3)) + { + _slotToGather = alternativeSlot; + actions.Enqueue(PickAction(EAction.SharpVision3, EAction.FieldMastery3)); + return actions; + } + } + } + + var slot = slots.Single(x => x.ItemId == Task.Request.ItemId); + if (slot.GatheringChance > 0 && slot.GatheringChance < 100) + { + if (slot.GatheringChance >= 95 && + CanUseAction(EAction.SharpVision1, EAction.FieldMastery1)) + { actions.Enqueue(PickAction(EAction.SharpVision1, EAction.FieldMastery1)); return actions; } - if (alternativeSlot.GatheringChance >= 85 && + if (slot.GatheringChance >= 85 && CanUseAction(EAction.SharpVision2, EAction.FieldMastery2)) { - _slotToGather = alternativeSlot; actions.Enqueue(PickAction(EAction.SharpVision2, EAction.FieldMastery2)); return actions; } - if (alternativeSlot.GatheringChance >= 50 && + if (slot.GatheringChance >= 50 && CanUseAction(EAction.SharpVision3, EAction.FieldMastery3)) { - _slotToGather = alternativeSlot; actions.Enqueue(PickAction(EAction.SharpVision3, EAction.FieldMastery3)); return actions; } } } - var slot = slots.Single(x => x.ItemId == currentRequest.ItemId); - if (slot.GatheringChance > 0 && slot.GatheringChance < 100) - { - if (slot.GatheringChance >= 95 && - CanUseAction(EAction.SharpVision1, EAction.FieldMastery1)) - { - actions.Enqueue(PickAction(EAction.SharpVision1, EAction.FieldMastery1)); - return actions; - } - - if (slot.GatheringChance >= 85 && - CanUseAction(EAction.SharpVision2, EAction.FieldMastery2)) - { - actions.Enqueue(PickAction(EAction.SharpVision2, EAction.FieldMastery2)); - return actions; - } - - if (slot.GatheringChance >= 50 && - CanUseAction(EAction.SharpVision3, EAction.FieldMastery3)) - { - actions.Enqueue(PickAction(EAction.SharpVision3, EAction.FieldMastery3)); - return actions; - } - } + return actions; } - return actions; - } + private EAction PickAction(EAction minerAction, EAction botanistAction) + { + if ((EClassJob?)clientState.LocalPlayer?.ClassJob.Id == EClassJob.Miner) + return minerAction; + else + return botanistAction; + } - private EAction PickAction(EAction minerAction, EAction botanistAction) - { - if ((EClassJob?)clientState.LocalPlayer?.ClassJob.Id == EClassJob.Miner) - return minerAction; - else - return botanistAction; + private unsafe bool CanUseAction(EAction minerAction, EAction botanistAction) + { + EAction action = PickAction(minerAction, botanistAction); + return ActionManager.Instance()->GetActionStatus(ActionType.Action, (uint)action) == 0; + } } - private unsafe bool CanUseAction(EAction minerAction, EAction botanistAction) - { - EAction action = PickAction(minerAction, botanistAction); - return ActionManager.Instance()->GetActionStatus(ActionType.Action, (uint)action) == 0; - } - - public void OnRevisit() - { - _revisitTriggered = true; - } - - public override string ToString() => $"DoGather{(revisitRequired ? " if revist" : "")}"; - [SuppressMessage("ReSharper", "NotAccessedPositionalProperty.Local")] private sealed record SlotInfo(int Index, uint ItemId, int GatheringChance, int BoonChance, int Quantity); diff --git a/Questionable/Controller/Steps/Gathering/DoGatherCollectable.cs b/Questionable/Controller/Steps/Gathering/DoGatherCollectable.cs index 99779c14..16740943 100644 --- a/Questionable/Controller/Steps/Gathering/DoGatherCollectable.cs +++ b/Questionable/Controller/Steps/Gathering/DoGatherCollectable.cs @@ -1,5 +1,4 @@ -using System; -using System.Collections.Generic; +using System.Collections.Generic; using System.Diagnostics.CodeAnalysis; using Dalamud.Game.Text; using Dalamud.Plugin.Services; @@ -13,189 +12,194 @@ using Questionable.Model.Questing; namespace Questionable.Controller.Steps.Gathering; -internal sealed class DoGatherCollectable( - GatheringController.GatheringRequest currentRequest, - GatheringNode currentNode, - bool revisitRequired, - GatheringController gatheringController, - GameFunctions gameFunctions, - IClientState clientState, - IGameGui gameGui, - ILogger logger) : ITask, IRevisitAware +internal static class DoGatherCollectable { - private bool _revisitTriggered; - private Queue? _actionQueue; - - private bool? _expectedScrutiny; - - public bool Start() => true; - - public unsafe ETaskResult Update() + internal sealed record Task( + GatheringController.GatheringRequest Request, + GatheringNode Node, + bool RevisitRequired) : ITask, IRevisitAware { - if (revisitRequired && !_revisitTriggered) + public bool RevisitTriggered { get; private set; } + + public void OnRevisit() => RevisitTriggered = true; + + public override string ToString() => + $"DoGatherCollectable({SeIconChar.Collectible.ToIconString()}/{Request.Collectability}){(RevisitRequired ? " if revist" : "")}"; + } + + internal sealed class GatherCollectableExecutor( + GatheringController gatheringController, + GameFunctions gameFunctions, + IClientState clientState, + IGameGui gameGui, + ILogger logger) : TaskExecutor + { + private Queue? _actionQueue; + + private bool? _expectedScrutiny; + + protected override bool Start() => true; + + public override unsafe ETaskResult Update() { - logger.LogInformation("No revisit"); - return ETaskResult.TaskComplete; + if (Task.RevisitRequired && !Task.RevisitTriggered) + { + logger.LogInformation("No revisit"); + return ETaskResult.TaskComplete; + } + + if (gatheringController.HasNodeDisappeared(Task.Node)) + { + logger.LogInformation("Node disappeared"); + return ETaskResult.TaskComplete; + } + + if (gatheringController.HasRequestedItems()) + { + if (gameGui.TryGetAddonByName("GatheringMasterpiece", out AtkUnitBase* atkUnitBase)) + { + atkUnitBase->FireCallbackInt(1); + return ETaskResult.StillRunning; + } + + if (gameGui.TryGetAddonByName("Gathering", out atkUnitBase)) + { + atkUnitBase->FireCallbackInt(-1); + return ETaskResult.TaskComplete; + } + } + + if (gameFunctions.GetFreeInventorySlots() == 0) + throw new TaskException("Inventory full"); + + NodeCondition? nodeCondition = GetNodeCondition(); + if (nodeCondition == null) + return ETaskResult.TaskComplete; + + if (_expectedScrutiny != null) + { + if (nodeCondition.ScrutinyActive != _expectedScrutiny) + return ETaskResult.StillRunning; + + // continue on next frame + _expectedScrutiny = null; + return ETaskResult.StillRunning; + } + + if (_actionQueue != null && _actionQueue.TryPeek(out EAction nextAction)) + { + if (gameFunctions.UseAction(nextAction)) + { + _expectedScrutiny = nextAction switch + { + EAction.ScrutinyMiner or EAction.ScrutinyBotanist => true, + EAction.ScourMiner or EAction.ScourBotanist or EAction.MeticulousMiner + or EAction.MeticulousBotanist => false, + _ => null + }; + logger.LogInformation("Used action {Action} on node", nextAction); + _actionQueue.Dequeue(); + } + + return ETaskResult.StillRunning; + } + + if (nodeCondition.CollectabilityToGoal(Task.Request.Collectability) > 0) + { + _actionQueue = GetNextActions(nodeCondition); + if (_actionQueue != null) + { + foreach (var action in _actionQueue) + logger.LogInformation("Next Actions {Action}", action); + return ETaskResult.StillRunning; + } + } + + _actionQueue = new Queue(); + _actionQueue.Enqueue(PickAction(EAction.CollectMiner, EAction.CollectBotanist)); + return ETaskResult.StillRunning; } - if (gatheringController.HasNodeDisappeared(currentNode)) - { - logger.LogInformation("Node disappeared"); - return ETaskResult.TaskComplete; - } - - if (gatheringController.HasRequestedItems()) + private unsafe NodeCondition? GetNodeCondition() { if (gameGui.TryGetAddonByName("GatheringMasterpiece", out AtkUnitBase* atkUnitBase)) { - atkUnitBase->FireCallbackInt(1); - return ETaskResult.StillRunning; + var atkValues = atkUnitBase->AtkValues; + return new NodeCondition( + CurrentCollectability: atkValues[13].UInt, + MaxCollectability: atkValues[14].UInt, + CurrentIntegrity: atkValues[62].UInt, + MaxIntegrity: atkValues[63].UInt, + ScrutinyActive: atkValues[54].Bool, + CollectabilityFromScour: atkValues[48].UInt, + CollectabilityFromMeticulous: atkValues[51].UInt + ); } - if (gameGui.TryGetAddonByName("Gathering", out atkUnitBase)) + return null; + } + + private Queue GetNextActions(NodeCondition nodeCondition) + { + uint gp = clientState.LocalPlayer!.CurrentGp; + logger.LogTrace( + "Getting next actions (with {GP} GP, {MeticulousCollectability}~ meticulous, {ScourCollectability}~ scour)", + gp, nodeCondition.CollectabilityFromMeticulous, nodeCondition.CollectabilityFromScour); + + Queue actions = new(); + + uint neededCollectability = nodeCondition.CollectabilityToGoal(Task.Request.Collectability); + if (neededCollectability <= nodeCondition.CollectabilityFromMeticulous) { - atkUnitBase->FireCallbackInt(-1); - return ETaskResult.TaskComplete; + logger.LogTrace("Can get all needed {NeededCollectability} from {Collectability}~ meticulous", + neededCollectability, nodeCondition.CollectabilityFromMeticulous); + actions.Enqueue(PickAction(EAction.MeticulousMiner, EAction.MeticulousBotanist)); + return actions; } - } - if (gameFunctions.GetFreeInventorySlots() == 0) - throw new TaskException("Inventory full"); - - NodeCondition? nodeCondition = GetNodeCondition(); - if (nodeCondition == null) - return ETaskResult.TaskComplete; - - if (_expectedScrutiny != null) - { - if (nodeCondition.ScrutinyActive != _expectedScrutiny) - return ETaskResult.StillRunning; - - // continue on next frame - _expectedScrutiny = null; - return ETaskResult.StillRunning; - } - - if (_actionQueue != null && _actionQueue.TryPeek(out EAction nextAction)) - { - if (gameFunctions.UseAction(nextAction)) + if (neededCollectability <= nodeCondition.CollectabilityFromScour) { - _expectedScrutiny = nextAction switch - { - EAction.ScrutinyMiner or EAction.ScrutinyBotanist => true, - EAction.ScourMiner or EAction.ScourBotanist or EAction.MeticulousMiner - or EAction.MeticulousBotanist => false, - _ => null - }; - logger.LogInformation("Used action {Action} on node", nextAction); - _actionQueue.Dequeue(); + logger.LogTrace("Can get all needed {NeededCollectability} from {Collectability}~ scour", + neededCollectability, nodeCondition.CollectabilityFromScour); + actions.Enqueue(PickAction(EAction.ScourMiner, EAction.ScourBotanist)); + return actions; } - return ETaskResult.StillRunning; - } - - if (nodeCondition.CollectabilityToGoal(currentRequest.Collectability) > 0) - { - _actionQueue = GetNextActions(nodeCondition); - if (_actionQueue != null) + // neither action directly solves our problem + if (!nodeCondition.ScrutinyActive && gp >= 200) { - foreach (var action in _actionQueue) - logger.LogInformation("Next Actions {Action}", action); - return ETaskResult.StillRunning; + logger.LogTrace("Still missing {NeededCollectability} collectability, scrutiny inactive", + neededCollectability); + actions.Enqueue(PickAction(EAction.ScrutinyMiner, EAction.ScrutinyBotanist)); + return actions; + } + + if (nodeCondition.ScrutinyActive) + { + logger.LogTrace( + "Scrutiny active, need {NeededCollectability} and we expect {Collectability}~ meticulous", + neededCollectability, nodeCondition.CollectabilityFromMeticulous); + actions.Enqueue(PickAction(EAction.MeticulousMiner, EAction.MeticulousBotanist)); + return actions; + } + else + { + logger.LogTrace("Scrutiny active, need {NeededCollectability} and we expect {Collectability}~ scour", + neededCollectability, nodeCondition.CollectabilityFromScour); + actions.Enqueue(PickAction(EAction.ScourMiner, EAction.ScourBotanist)); + return actions; } } - _actionQueue = new Queue(); - _actionQueue.Enqueue(PickAction(EAction.CollectMiner, EAction.CollectBotanist)); - return ETaskResult.StillRunning; - } - - private unsafe NodeCondition? GetNodeCondition() - { - if (gameGui.TryGetAddonByName("GatheringMasterpiece", out AtkUnitBase* atkUnitBase)) + private EAction PickAction(EAction minerAction, EAction botanistAction) { - var atkValues = atkUnitBase->AtkValues; - return new NodeCondition( - CurrentCollectability: atkValues[13].UInt, - MaxCollectability: atkValues[14].UInt, - CurrentIntegrity: atkValues[62].UInt, - MaxIntegrity: atkValues[63].UInt, - ScrutinyActive: atkValues[54].Bool, - CollectabilityFromScour: atkValues[48].UInt, - CollectabilityFromMeticulous: atkValues[51].UInt - ); - } - - return null; - } - - private Queue GetNextActions(NodeCondition nodeCondition) - { - uint gp = clientState.LocalPlayer!.CurrentGp; - logger.LogTrace( - "Getting next actions (with {GP} GP, {MeticulousCollectability}~ meticulous, {ScourCollectability}~ scour)", - gp, nodeCondition.CollectabilityFromMeticulous, nodeCondition.CollectabilityFromScour); - - Queue actions = new(); - - uint neededCollectability = nodeCondition.CollectabilityToGoal(currentRequest.Collectability); - if (neededCollectability <= nodeCondition.CollectabilityFromMeticulous) - { - logger.LogTrace("Can get all needed {NeededCollectability} from {Collectability}~ meticulous", - neededCollectability, nodeCondition.CollectabilityFromMeticulous); - actions.Enqueue(PickAction(EAction.MeticulousMiner, EAction.MeticulousBotanist)); - return actions; - } - - if (neededCollectability <= nodeCondition.CollectabilityFromScour) - { - logger.LogTrace("Can get all needed {NeededCollectability} from {Collectability}~ scour", - neededCollectability, nodeCondition.CollectabilityFromScour); - actions.Enqueue(PickAction(EAction.ScourMiner, EAction.ScourBotanist)); - return actions; - } - - // neither action directly solves our problem - if (!nodeCondition.ScrutinyActive && gp >= 200) - { - logger.LogTrace("Still missing {NeededCollectability} collectability, scrutiny inactive", - neededCollectability); - actions.Enqueue(PickAction(EAction.ScrutinyMiner, EAction.ScrutinyBotanist)); - return actions; - } - - if (nodeCondition.ScrutinyActive) - { - logger.LogTrace("Scrutiny active, need {NeededCollectability} and we expect {Collectability}~ meticulous", - neededCollectability, nodeCondition.CollectabilityFromMeticulous); - actions.Enqueue(PickAction(EAction.MeticulousMiner, EAction.MeticulousBotanist)); - return actions; - } - else - { - logger.LogTrace("Scrutiny active, need {NeededCollectability} and we expect {Collectability}~ scour", - neededCollectability, nodeCondition.CollectabilityFromScour); - actions.Enqueue(PickAction(EAction.ScourMiner, EAction.ScourBotanist)); - return actions; + if ((EClassJob?)clientState.LocalPlayer?.ClassJob.Id == EClassJob.Miner) + return minerAction; + else + return botanistAction; } } - private EAction PickAction(EAction minerAction, EAction botanistAction) - { - if ((EClassJob?)clientState.LocalPlayer?.ClassJob.Id == EClassJob.Miner) - return minerAction; - else - return botanistAction; - } - - public void OnRevisit() - { - _revisitTriggered = true; - } - - public override string ToString() => - $"DoGatherCollectable({SeIconChar.Collectible.ToIconString()}/{_expectedScrutiny} {currentRequest.Collectability}){(revisitRequired ? " if revist" : "")}"; - [SuppressMessage("ReSharper", "NotAccessedPositionalProperty.Local")] private sealed record NodeCondition( uint CurrentCollectability, diff --git a/Questionable/Controller/Steps/Gathering/MoveToLandingLocation.cs b/Questionable/Controller/Steps/Gathering/MoveToLandingLocation.cs index 5694d65e..38fa30cd 100644 --- a/Questionable/Controller/Steps/Gathering/MoveToLandingLocation.cs +++ b/Questionable/Controller/Steps/Gathering/MoveToLandingLocation.cs @@ -2,51 +2,62 @@ using System.Linq; using System.Numerics; using Dalamud.Game.ClientState.Objects.Enums; +using Dalamud.Game.Text.SeStringHandling; using Dalamud.Plugin.Services; -using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Questionable.Controller.Steps.Shared; using Questionable.Functions; using Questionable.Model; using Questionable.Model.Gathering; +using Questionable.Model.Questing; namespace Questionable.Controller.Steps.Gathering; -internal sealed class MoveToLandingLocation( - ushort territoryId, - bool flyBetweenNodes, - GatheringNode gatheringNode, - MoveTo.Factory moveFactory, - GameFunctions gameFunctions, - IObjectTable objectTable, - ILogger logger) : ITask +internal static class MoveToLandingLocation { - private ITask _moveTask = null!; - - public bool Start() + internal sealed record Task( + ushort TerritoryId, + bool FlyBetweenNodes, + GatheringNode GatheringNode) : ITask { - var location = gatheringNode.Locations.First(); - if (gatheringNode.Locations.Count > 1) - { - var gameObject = objectTable.SingleOrDefault(x => - x.ObjectKind == ObjectKind.GatheringPoint && x.DataId == gatheringNode.DataId && x.IsTargetable); - if (gameObject == null) - return false; - - location = gatheringNode.Locations.Single(x => Vector3.Distance(x.Position, gameObject.Position) < 0.1f); - } - - var (target, degrees, range) = GatheringMath.CalculateLandingLocation(location); - logger.LogInformation("Preliminary landing location: {Location}, with degrees = {Degrees}, range = {Range}", - target.ToString("G", CultureInfo.InvariantCulture), degrees, range); - - bool fly = flyBetweenNodes && gameFunctions.IsFlyingUnlocked(territoryId); - _moveTask = moveFactory.Move(new MoveTo.MoveParams(territoryId, target, 0.25f, DataId: gatheringNode.DataId, - Fly: fly, IgnoreDistanceToObject: true)); - return _moveTask.Start(); + public override string ToString() => $"Land/{FlyBetweenNodes}"; } - public ETaskResult Update() => _moveTask.Update(); + internal sealed class MoveToLandingLocationExecutor( + MoveTo.MoveExecutor moveExecutor, + GameFunctions gameFunctions, + IObjectTable objectTable, + ILogger logger) : TaskExecutor, IToastAware + { + private ITask _moveTask = null!; - public override string ToString() => $"Land/{_moveTask}/{flyBetweenNodes}"; + protected override bool Start() + { + var location = Task.GatheringNode.Locations.First(); + if (Task.GatheringNode.Locations.Count > 1) + { + var gameObject = objectTable.SingleOrDefault(x => + x.ObjectKind == ObjectKind.GatheringPoint && x.DataId == Task.GatheringNode.DataId && + x.IsTargetable); + if (gameObject == null) + return false; + + location = Task.GatheringNode.Locations.Single(x => + Vector3.Distance(x.Position, gameObject.Position) < 0.1f); + } + + var (target, degrees, range) = GatheringMath.CalculateLandingLocation(location); + logger.LogInformation("Preliminary landing location: {Location}, with degrees = {Degrees}, range = {Range}", + target.ToString("G", CultureInfo.InvariantCulture), degrees, range); + + bool fly = Task.FlyBetweenNodes && gameFunctions.IsFlyingUnlocked(Task.TerritoryId); + _moveTask = new MoveTo.MoveTask(Task.TerritoryId, target, null, 0.25f, + DataId: Task.GatheringNode.DataId, Fly: fly, IgnoreDistanceToObject: true, + InteractionType: EInteractionType.Gather); + return moveExecutor.Start(_moveTask); + } + + public override ETaskResult Update() => moveExecutor.Update(); + public bool OnErrorToast(SeString message) => moveExecutor.OnErrorToast(message); + } } diff --git a/Questionable/Controller/Steps/Gathering/TurnInDelivery.cs b/Questionable/Controller/Steps/Gathering/TurnInDelivery.cs index ca6a93d8..caf2b0f4 100644 --- a/Questionable/Controller/Steps/Gathering/TurnInDelivery.cs +++ b/Questionable/Controller/Steps/Gathering/TurnInDelivery.cs @@ -1,9 +1,7 @@ -using System; -using FFXIVClientStructs.FFXIV.Client.Game; +using FFXIVClientStructs.FFXIV.Client.Game; using FFXIVClientStructs.FFXIV.Client.UI.Agent; using FFXIVClientStructs.FFXIV.Component.GUI; using LLib.GameUI; -using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Questionable.Model; using Questionable.Model.Questing; @@ -13,24 +11,29 @@ namespace Questionable.Controller.Steps.Gathering; internal static class TurnInDelivery { - internal sealed class Factory(ILoggerFactory loggerFactory) : SimpleTaskFactory + internal sealed class Factory : SimpleTaskFactory { public override ITask? CreateTask(Quest quest, QuestSequence sequence, QuestStep step) { if (quest.Id is not SatisfactionSupplyNpcId || sequence.Sequence != 1) return null; - return new SatisfactionSupplyTurnIn(loggerFactory.CreateLogger()); + return new Task(); } } - private sealed class SatisfactionSupplyTurnIn(ILogger logger) : ITask + internal sealed record Task : ITask + { + public override string ToString() => "WeeklyDeliveryTurnIn"; + } + + internal sealed class SatisfactionSupplyTurnIn(ILogger logger) : TaskExecutor { private ushort? _remainingAllowances; - public bool Start() => true; + protected override bool Start() => true; - public unsafe ETaskResult Update() + public override unsafe ETaskResult Update() { AgentSatisfactionSupply* agentSatisfactionSupply = AgentSatisfactionSupply.Instance(); if (agentSatisfactionSupply == null || !agentSatisfactionSupply->IsAgentActive()) @@ -44,7 +47,7 @@ internal static class TurnInDelivery if (addon == null || !LAddon.IsAddonReady(addon)) return ETaskResult.StillRunning; - ushort remainingAllowances = agentSatisfactionSupply->RemainingAllowances; + ushort remainingAllowances = agentSatisfactionSupply->NpcData.RemainingAllowances; if (remainingAllowances == 0) { logger.LogInformation("No remaining weekly allowances"); @@ -77,7 +80,5 @@ internal static class TurnInDelivery addon->FireCallback(2, pickGatheringItem); return ETaskResult.StillRunning; } - - public override string ToString() => "WeeklyDeliveryTurnIn"; } } diff --git a/Questionable/Controller/Steps/IConditionChangeAware.cs b/Questionable/Controller/Steps/IConditionChangeAware.cs index 4e41d638..215106f6 100644 --- a/Questionable/Controller/Steps/IConditionChangeAware.cs +++ b/Questionable/Controller/Steps/IConditionChangeAware.cs @@ -2,7 +2,7 @@ namespace Questionable.Controller.Steps; -public interface IConditionChangeAware +internal interface IConditionChangeAware : ITaskExecutor { void OnConditionChange(ConditionFlag flag, bool value); } diff --git a/Questionable/Controller/Steps/IRevisitAware.cs b/Questionable/Controller/Steps/IRevisitAware.cs index 4faf1c0b..96d183be 100644 --- a/Questionable/Controller/Steps/IRevisitAware.cs +++ b/Questionable/Controller/Steps/IRevisitAware.cs @@ -1,6 +1,6 @@ namespace Questionable.Controller.Steps; -public interface IRevisitAware +internal interface IRevisitAware { void OnRevisit(); } diff --git a/Questionable/Controller/Steps/ITask.cs b/Questionable/Controller/Steps/ITask.cs index 8354406d..60c22cf9 100644 --- a/Questionable/Controller/Steps/ITask.cs +++ b/Questionable/Controller/Steps/ITask.cs @@ -1,11 +1,6 @@ -using System.Threading; -using System.Threading.Tasks; - -namespace Questionable.Controller.Steps; +namespace Questionable.Controller.Steps; internal interface ITask { - bool Start(); - - ETaskResult Update(); + bool ShouldRedoOnInterrupt() => false; } diff --git a/Questionable/Controller/Steps/IToastAware.cs b/Questionable/Controller/Steps/IToastAware.cs index 67a1c7f6..49e09d50 100644 --- a/Questionable/Controller/Steps/IToastAware.cs +++ b/Questionable/Controller/Steps/IToastAware.cs @@ -2,7 +2,7 @@ namespace Questionable.Controller.Steps; -public interface IToastAware +internal interface IToastAware : ITaskExecutor { bool OnErrorToast(SeString message); } diff --git a/Questionable/Controller/Steps/InteractionProgressContext.cs b/Questionable/Controller/Steps/InteractionProgressContext.cs new file mode 100644 index 00000000..a943ed5f --- /dev/null +++ b/Questionable/Controller/Steps/InteractionProgressContext.cs @@ -0,0 +1,97 @@ +using System; +using FFXIVClientStructs.FFXIV.Client.Game; + +namespace Questionable.Controller.Steps; + +internal sealed class InteractionProgressContext +{ + private bool _firstUpdateDone; + public bool CheckSequence { get; private set; } + public int CurrentSequence { get; private set; } + + private InteractionProgressContext(bool checkSequence, int currentSequence) + { + CheckSequence = checkSequence; + CurrentSequence = currentSequence; + } + + public static unsafe InteractionProgressContext Create(bool checkSequence) + { + if (!checkSequence) + { + // this is a silly hack; we assume that the previous cast was successful + // if not for this, we'd instantly be seen as interrupted + ActionManager.Instance()->CastTimeElapsed = ActionManager.Instance()->CastTimeTotal; + } + + return new InteractionProgressContext(checkSequence, ActionManager.Instance()->LastUsedActionSequence); + } + + private static unsafe (bool, InteractionProgressContext?) FromActionUseInternal(Func func) + { + int oldSequence = ActionManager.Instance()->LastUsedActionSequence; + if (!func()) + return (false, null); + int newSequence = ActionManager.Instance()->LastUsedActionSequence; + if (oldSequence == newSequence) + return (true, null); + return (true, Create(true)); + } + + public static InteractionProgressContext? FromActionUse(Func func) + { + return FromActionUseInternal(func).Item2; + } + + public static InteractionProgressContext? FromActionUseOrDefault(Func func) + { + var result = FromActionUseInternal(func); + if (!result.Item1) + return null; + return result.Item2 ?? Create(false); + } + + public unsafe void Update() + { + if (!_firstUpdateDone) + { + int lastSequence = ActionManager.Instance()->LastUsedActionSequence; + if (!CheckSequence && lastSequence > CurrentSequence) + { + CheckSequence = true; + CurrentSequence = lastSequence; + } + + _firstUpdateDone = true; + } + } + + public unsafe bool WasSuccessful() + { + if (CheckSequence) + { + if (CurrentSequence != ActionManager.Instance()->LastUsedActionSequence || + CurrentSequence != ActionManager.Instance()->LastHandledActionSequence) + return false; + } + + return ActionManager.Instance()->CastTimeElapsed > 0 && + Math.Abs(ActionManager.Instance()->CastTimeElapsed - ActionManager.Instance()->CastTimeTotal) < 0.001f; + } + + public unsafe bool WasInterrupted() + { + if (CheckSequence) + { + if (CurrentSequence == ActionManager.Instance()->LastHandledActionSequence && + CurrentSequence == ActionManager.Instance()->LastUsedActionSequence) + return false; + } + + return ActionManager.Instance()->CastTimeElapsed == 0 && + ActionManager.Instance()->CastTimeTotal > 0; + } + + public override string ToString() => + $"IPCtx({(CheckSequence ? CurrentSequence : "-")} - {WasSuccessful()}, {WasInterrupted()})"; +} diff --git a/Questionable/Controller/Steps/Interactions/Action.cs b/Questionable/Controller/Steps/Interactions/Action.cs index a91983b3..e6c4f1f4 100644 --- a/Questionable/Controller/Steps/Interactions/Action.cs +++ b/Questionable/Controller/Steps/Interactions/Action.cs @@ -1,9 +1,6 @@ -using System; +using System; using System.Collections.Generic; -using Dalamud.Game.ClientState.Conditions; using Dalamud.Game.ClientState.Objects.Types; -using FFXIVClientStructs.FFXIV.Client.Game; -using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Questionable.Controller.Steps.Common; using Questionable.Functions; @@ -14,8 +11,7 @@ namespace Questionable.Controller.Steps.Interactions; internal static class Action { - internal sealed class Factory(GameFunctions gameFunctions, Mount.Factory mountFactory, ILoggerFactory loggerFactory) - : ITaskFactory + internal sealed class Factory : ITaskFactory { public IEnumerable CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) { @@ -24,45 +20,69 @@ internal static class Action ArgumentNullException.ThrowIfNull(step.Action); - var task = new UseOnObject(step.DataId, step.Action.Value, gameFunctions, - loggerFactory.CreateLogger()); + var task = OnObject(step.DataId, step.Action.Value); if (step.Action.Value.RequiresMount()) return [task]; else - return [mountFactory.Unmount(), task]; + return [new Mount.UnmountTask(), task]; + } + + public static ITask OnObject(uint? dataId, EAction action) + { + return new UseOnObject(dataId, action); } } - private sealed class UseOnObject( - uint? dataId, - EAction action, + internal sealed record UseOnObject( + uint? DataId, + EAction Action) : ITask + { + public override string ToString() => $"Action({Action})"; + } + + internal sealed class UseOnObjectExecutor( GameFunctions gameFunctions, - ILogger logger) : ITask + ILogger logger) : TaskExecutor { private bool _usedAction; private DateTime _continueAt = DateTime.MinValue; - public bool Start() + protected override bool Start() { - if (dataId != null) + if (Task.DataId != null) { - IGameObject? gameObject = gameFunctions.FindObjectByDataId(dataId.Value); + IGameObject? gameObject = gameFunctions.FindObjectByDataId(Task.DataId.Value); if (gameObject == null) { - logger.LogWarning("No game object with dataId {DataId}", dataId); + logger.LogWarning("No game object with dataId {DataId}", Task.DataId); return false; } if (gameObject.IsTargetable) { - _usedAction = gameFunctions.UseAction(gameObject, action); + if (Task.Action == EAction.Diagnosis) + { + uint eukrasiaAura = 2606; + // If SGE have Eukrasia status, we need to remove it. + if (gameFunctions.HasStatus(eukrasiaAura)) + { + if (GameFunctions.RemoveStatus(eukrasiaAura)) + { + // Introduce a delay of 2 seconds before using the next action (otherwise it will try and use Eukrasia Diagnosis) + _continueAt = DateTime.Now.AddSeconds(2); + return true; + } + } + } + + _usedAction = gameFunctions.UseAction(gameObject, Task.Action); _continueAt = DateTime.Now.AddSeconds(0.5); return true; } } else { - _usedAction = gameFunctions.UseAction(action); + _usedAction = gameFunctions.UseAction(Task.Action); _continueAt = DateTime.Now.AddSeconds(0.5); return true; } @@ -70,25 +90,25 @@ internal static class Action return true; } - public ETaskResult Update() + public override ETaskResult Update() { if (DateTime.Now <= _continueAt) return ETaskResult.StillRunning; if (!_usedAction) { - if (dataId != null) + if (Task.DataId != null) { - IGameObject? gameObject = gameFunctions.FindObjectByDataId(dataId.Value); + IGameObject? gameObject = gameFunctions.FindObjectByDataId(Task.DataId.Value); if (gameObject == null || !gameObject.IsTargetable) return ETaskResult.StillRunning; - _usedAction = gameFunctions.UseAction(gameObject, action); + _usedAction = gameFunctions.UseAction(gameObject, Task.Action); _continueAt = DateTime.Now.AddSeconds(0.5); } else { - _usedAction = gameFunctions.UseAction(action); + _usedAction = gameFunctions.UseAction(Task.Action); _continueAt = DateTime.Now.AddSeconds(0.5); } @@ -97,7 +117,5 @@ internal static class Action return ETaskResult.TaskComplete; } - - public override string ToString() => $"Action({action})"; } } diff --git a/Questionable/Controller/Steps/Interactions/AetherCurrent.cs b/Questionable/Controller/Steps/Interactions/AetherCurrent.cs index 45507e80..b244bbea 100644 --- a/Questionable/Controller/Steps/Interactions/AetherCurrent.cs +++ b/Questionable/Controller/Steps/Interactions/AetherCurrent.cs @@ -12,10 +12,8 @@ namespace Questionable.Controller.Steps.Interactions; internal static class AetherCurrent { internal sealed class Factory( - GameFunctions gameFunctions, AetherCurrentData aetherCurrentData, - IChatGui chatGui, - ILoggerFactory loggerFactory) : SimpleTaskFactory + IChatGui chatGui) : SimpleTaskFactory { public override ITask? CreateTask(Quest quest, QuestSequence sequence, QuestStep step) { @@ -32,32 +30,40 @@ internal static class AetherCurrent return null; } - return new DoAttune(step.DataId.Value, step.AetherCurrentId.Value, gameFunctions, loggerFactory.CreateLogger()); + return new Attune(step.DataId.Value, step.AetherCurrentId.Value); } } - private sealed class DoAttune(uint dataId, uint aetherCurrentId, GameFunctions gameFunctions, ILogger logger) : ITask + internal sealed record Attune(uint DataId, uint AetherCurrentId) : ITask { - public bool Start() + public bool ShouldRedoOnInterrupt() => true; + public override string ToString() => $"AttuneAetherCurrent({AetherCurrentId})"; + } + + internal sealed class DoAttune( + GameFunctions gameFunctions, + ILogger logger) : TaskExecutor + { + protected override bool Start() { - if (!gameFunctions.IsAetherCurrentUnlocked(aetherCurrentId)) + if (!gameFunctions.IsAetherCurrentUnlocked(Task.AetherCurrentId)) { - logger.LogInformation("Attuning to aether current {AetherCurrentId} / {DataId}", aetherCurrentId, - dataId); - gameFunctions.InteractWith(dataId); + logger.LogInformation("Attuning to aether current {AetherCurrentId} / {DataId}", Task.AetherCurrentId, + Task.DataId); + ProgressContext = + InteractionProgressContext.FromActionUseOrDefault(() => gameFunctions.InteractWith(Task.DataId)); return true; } - logger.LogInformation("Already attuned to aether current {AetherCurrentId} / {DataId}", aetherCurrentId, - dataId); + logger.LogInformation("Already attuned to aether current {AetherCurrentId} / {DataId}", + Task.AetherCurrentId, + Task.DataId); return false; } - public ETaskResult Update() => - gameFunctions.IsAetherCurrentUnlocked(aetherCurrentId) + public override ETaskResult Update() => + gameFunctions.IsAetherCurrentUnlocked(Task.AetherCurrentId) ? ETaskResult.TaskComplete : ETaskResult.StillRunning; - - public override string ToString() => $"AttuneAetherCurrent({aetherCurrentId})"; } } diff --git a/Questionable/Controller/Steps/Interactions/AethernetShard.cs b/Questionable/Controller/Steps/Interactions/AethernetShard.cs index edcf4720..b1af7fe9 100644 --- a/Questionable/Controller/Steps/Interactions/AethernetShard.cs +++ b/Questionable/Controller/Steps/Interactions/AethernetShard.cs @@ -11,10 +11,7 @@ namespace Questionable.Controller.Steps.Interactions; internal static class AethernetShard { - internal sealed class Factory( - AetheryteFunctions aetheryteFunctions, - GameFunctions gameFunctions, - ILoggerFactory loggerFactory) : SimpleTaskFactory + internal sealed class Factory : SimpleTaskFactory { public override ITask? CreateTask(Quest quest, QuestSequence sequence, QuestStep step) { @@ -23,35 +20,38 @@ internal static class AethernetShard ArgumentNullException.ThrowIfNull(step.AethernetShard); - return new DoAttune(step.AethernetShard.Value, aetheryteFunctions, gameFunctions, - loggerFactory.CreateLogger()); + return new Attune(step.AethernetShard.Value); } } - private sealed class DoAttune( - EAetheryteLocation aetheryteLocation, + internal sealed record Attune(EAetheryteLocation AetheryteLocation) : ITask + { + public bool ShouldRedoOnInterrupt() => true; + public override string ToString() => $"AttuneAethernetShard({AetheryteLocation})"; + } + + internal sealed class DoAttune( AetheryteFunctions aetheryteFunctions, GameFunctions gameFunctions, - ILogger logger) : ITask + ILogger logger) : TaskExecutor { - public bool Start() + protected override bool Start() { - if (!aetheryteFunctions.IsAetheryteUnlocked(aetheryteLocation)) + if (!aetheryteFunctions.IsAetheryteUnlocked(Task.AetheryteLocation)) { - logger.LogInformation("Attuning to aethernet shard {AethernetShard}", aetheryteLocation); - gameFunctions.InteractWith((uint)aetheryteLocation, ObjectKind.Aetheryte); + logger.LogInformation("Attuning to aethernet shard {AethernetShard}", Task.AetheryteLocation); + ProgressContext = InteractionProgressContext.FromActionUseOrDefault(() => + gameFunctions.InteractWith((uint)Task.AetheryteLocation, ObjectKind.Aetheryte)); return true; } - logger.LogInformation("Already attuned to aethernet shard {AethernetShard}", aetheryteLocation); + logger.LogInformation("Already attuned to aethernet shard {AethernetShard}", Task.AetheryteLocation); return false; } - public ETaskResult Update() => - aetheryteFunctions.IsAetheryteUnlocked(aetheryteLocation) + public override ETaskResult Update() => + aetheryteFunctions.IsAetheryteUnlocked(Task.AetheryteLocation) ? ETaskResult.TaskComplete : ETaskResult.StillRunning; - - public override string ToString() => $"AttuneAethernetShard({aetheryteLocation})"; } } diff --git a/Questionable/Controller/Steps/Interactions/Aetheryte.cs b/Questionable/Controller/Steps/Interactions/Aetheryte.cs index 5af0a6a3..d9754776 100644 --- a/Questionable/Controller/Steps/Interactions/Aetheryte.cs +++ b/Questionable/Controller/Steps/Interactions/Aetheryte.cs @@ -1,5 +1,4 @@ using System; -using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Questionable.Functions; using Questionable.Model; @@ -10,10 +9,7 @@ namespace Questionable.Controller.Steps.Interactions; internal static class Aetheryte { - internal sealed class Factory( - AetheryteFunctions aetheryteFunctions, - GameFunctions gameFunctions, - ILoggerFactory loggerFactory) : SimpleTaskFactory + internal sealed class Factory : SimpleTaskFactory { public override ITask? CreateTask(Quest quest, QuestSequence sequence, QuestStep step) { @@ -22,35 +18,39 @@ internal static class Aetheryte ArgumentNullException.ThrowIfNull(step.Aetheryte); - return new DoAttune(step.Aetheryte.Value, aetheryteFunctions, gameFunctions, - loggerFactory.CreateLogger()); + return new Attune(step.Aetheryte.Value); } } - private sealed class DoAttune( - EAetheryteLocation aetheryteLocation, + internal sealed record Attune(EAetheryteLocation AetheryteLocation) : ITask + { + public bool ShouldRedoOnInterrupt() => true; + public override string ToString() => $"AttuneAetheryte({AetheryteLocation})"; + } + + internal sealed class DoAttune( AetheryteFunctions aetheryteFunctions, GameFunctions gameFunctions, - ILogger logger) : ITask + ILogger logger) : TaskExecutor { - public bool Start() + protected override bool Start() { - if (!aetheryteFunctions.IsAetheryteUnlocked(aetheryteLocation)) + if (!aetheryteFunctions.IsAetheryteUnlocked(Task.AetheryteLocation)) { - logger.LogInformation("Attuning to aetheryte {Aetheryte}", aetheryteLocation); - gameFunctions.InteractWith((uint)aetheryteLocation); + logger.LogInformation("Attuning to aetheryte {Aetheryte}", Task.AetheryteLocation); + ProgressContext = + InteractionProgressContext.FromActionUseOrDefault(() => + gameFunctions.InteractWith((uint)Task.AetheryteLocation)); return true; } - logger.LogInformation("Already attuned to aetheryte {Aetheryte}", aetheryteLocation); + logger.LogInformation("Already attuned to aetheryte {Aetheryte}", Task.AetheryteLocation); return false; } - public ETaskResult Update() => - aetheryteFunctions.IsAetheryteUnlocked(aetheryteLocation) + public override ETaskResult Update() => + aetheryteFunctions.IsAetheryteUnlocked(Task.AetheryteLocation) ? ETaskResult.TaskComplete : ETaskResult.StillRunning; - - public override string ToString() => $"AttuneAetheryte({aetheryteLocation})"; } } diff --git a/Questionable/Controller/Steps/Interactions/Combat.cs b/Questionable/Controller/Steps/Interactions/Combat.cs index 8776280a..c670e3bc 100644 --- a/Questionable/Controller/Steps/Interactions/Combat.cs +++ b/Questionable/Controller/Steps/Interactions/Combat.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; -using Microsoft.Extensions.DependencyInjection; +using Questionable.Controller.CombatModules; using Questionable.Controller.Steps.Common; using Questionable.Controller.Steps.Shared; using Questionable.Controller.Utils; @@ -13,12 +13,7 @@ namespace Questionable.Controller.Steps.Interactions; internal static class Combat { - internal sealed class Factory( - CombatController combatController, - Interact.Factory interactFactory, - Mount.Factory mountFactory, - UseItem.Factory useItemFactory, - QuestFunctions questFunctions) : ITaskFactory + internal sealed class Factory(GameFunctions gameFunctions) : ITaskFactory { public IEnumerable CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) { @@ -27,7 +22,8 @@ internal static class Combat ArgumentNullException.ThrowIfNull(step.EnemySpawnType); - yield return mountFactory.Unmount(); + if (gameFunctions.GetMountId() != Mount128Module.MountId) + yield return new Mount.UnmountTask(); if (step.CombatDelaySecondsAtStart != null) { @@ -37,31 +33,56 @@ internal static class Combat switch (step.EnemySpawnType) { case EEnemySpawnType.AfterInteraction: - { ArgumentNullException.ThrowIfNull(step.DataId); - yield return interactFactory.Interact(step.DataId.Value, quest, EInteractionType.None, true); + yield return new Interact.Task(step.DataId.Value, quest, EInteractionType.None, true); + yield return new WaitAtEnd.WaitDelay(TimeSpan.FromSeconds(1)); yield return CreateTask(quest, sequence, step); break; - } case EEnemySpawnType.AfterItemUse: - { ArgumentNullException.ThrowIfNull(step.DataId); ArgumentNullException.ThrowIfNull(step.ItemId); - yield return useItemFactory.OnObject(quest.Id, step.DataId.Value, step.ItemId.Value, + yield return new UseItem.UseOnObject(quest.Id, step.DataId.Value, step.ItemId.Value, step.CompletionQuestVariablesFlags, true); + yield return new WaitAtEnd.WaitDelay(TimeSpan.FromSeconds(1)); + yield return CreateTask(quest, sequence, step); + break; + + case EEnemySpawnType.AfterAction: + ArgumentNullException.ThrowIfNull(step.DataId); + ArgumentNullException.ThrowIfNull(step.Action); + + if (!step.Action.Value.RequiresMount()) + yield return new Mount.UnmountTask(); + yield return new Action.UseOnObject(step.DataId.Value, step.Action.Value); + yield return new WaitAtEnd.WaitDelay(TimeSpan.FromSeconds(1)); + yield return CreateTask(quest, sequence, step); + break; + + case EEnemySpawnType.AfterEmote: + ArgumentNullException.ThrowIfNull(step.Emote); + + yield return new Mount.UnmountTask(); + if (step.DataId != null) + yield return new Emote.UseOnObject(step.Emote.Value, step.DataId.Value); + else + yield return new Emote.UseOnSelf(step.Emote.Value); + yield return new WaitAtEnd.WaitDelay(TimeSpan.FromSeconds(1)); yield return CreateTask(quest, sequence, step); break; - } case EEnemySpawnType.AutoOnEnterArea: + if (step.CombatDelaySecondsAtStart == null) + yield return new WaitAtEnd.WaitDelay(TimeSpan.FromSeconds(1)); + // automatically triggered when entering area, i.e. only unmount yield return CreateTask(quest, sequence, step); break; case EEnemySpawnType.OverworldEnemies: + case EEnemySpawnType.FateEnemies: yield return CreateTask(quest, sequence, step); break; @@ -70,52 +91,70 @@ internal static class Combat } } - public ITask CreateTask(Quest quest, QuestSequence sequence, QuestStep step) + private static Task CreateTask(Quest quest, QuestSequence sequence, QuestStep step) { ArgumentNullException.ThrowIfNull(step.EnemySpawnType); bool isLastStep = sequence.Steps.Last() == step; return CreateTask(quest.Id, isLastStep, step.EnemySpawnType.Value, step.KillEnemyDataIds, - step.CompletionQuestVariablesFlags, step.ComplexCombatData); + step.CompletionQuestVariablesFlags, step.ComplexCombatData, step.CombatItemUse); } - private HandleCombat CreateTask(ElementId elementId, bool isLastStep, EEnemySpawnType enemySpawnType, + internal static Task CreateTask(ElementId? elementId, bool isLastStep, EEnemySpawnType enemySpawnType, IList killEnemyDataIds, IList completionQuestVariablesFlags, - IList complexCombatData) + IList complexCombatData, CombatItemUse? combatItemUse) { - return new HandleCombat(isLastStep, new CombatController.CombatData + return new Task(new CombatController.CombatData { ElementId = elementId, SpawnType = enemySpawnType, KillEnemyDataIds = killEnemyDataIds.ToList(), ComplexCombatDatas = complexCombatData.ToList(), - }, completionQuestVariablesFlags, combatController, questFunctions); + CombatItemUse = combatItemUse, + }, completionQuestVariablesFlags, isLastStep); } } - private sealed class HandleCombat( - bool isLastStep, - CombatController.CombatData combatData, - IList completionQuestVariableFlags, - CombatController combatController, - QuestFunctions questFunctions) : ITask + internal sealed record Task( + CombatController.CombatData CombatData, + IList CompletionQuestVariableFlags, + bool IsLastStep) : ITask { - public bool Start() => combatController.Start(combatData); - - public ETaskResult Update() + public override string ToString() { - if (combatController.Update() != CombatController.EStatus.Complete) + if (QuestWorkUtils.HasCompletionFlags(CompletionQuestVariableFlags)) + return $"HandleCombat(wait: QW flags)"; + else if (IsLastStep) + return $"HandleCombat(wait: next sequence)"; + else + return $"HandleCombat(wait: not in combat)"; + } + } + + internal sealed class HandleCombat( + + CombatController combatController, + QuestFunctions questFunctions) : TaskExecutor + { + private CombatController.EStatus _status = CombatController.EStatus.NotStarted; + + protected override bool Start() => combatController.Start(Task.CombatData); + + public override ETaskResult Update() + { + _status = combatController.Update(); + if (_status != CombatController.EStatus.Complete) return ETaskResult.StillRunning; // if our quest step has any completion flags, we need to check if they are set - if (QuestWorkUtils.HasCompletionFlags(completionQuestVariableFlags) && - combatData.ElementId is QuestId questId) + if (QuestWorkUtils.HasCompletionFlags(Task.CompletionQuestVariableFlags) && + Task.CombatData.ElementId is QuestId questId) { var questWork = questFunctions.GetQuestProgressInfo(questId); if (questWork == null) return ETaskResult.StillRunning; - if (QuestWorkUtils.MatchesQuestWork(completionQuestVariableFlags, questWork)) + if (QuestWorkUtils.MatchesQuestWork(Task.CompletionQuestVariableFlags, questWork)) return ETaskResult.TaskComplete; else return ETaskResult.StillRunning; @@ -123,7 +162,7 @@ internal static class Combat // the last step, by definition, can only be progressed by the game recognizing we're in a new sequence, // so this is an indefinite wait - if (isLastStep) + if (Task.IsLastStep) return ETaskResult.StillRunning; else { @@ -131,15 +170,5 @@ internal static class Combat return ETaskResult.TaskComplete; } } - - public override string ToString() - { - if (QuestWorkUtils.HasCompletionFlags(completionQuestVariableFlags)) - return "HandleCombat(wait: QW flags)"; - else if (isLastStep) - return "HandleCombat(wait: next sequence)"; - else - return "HandleCombat(wait: not in combat)"; - } } } diff --git a/Questionable/Controller/Steps/Interactions/Dive.cs b/Questionable/Controller/Steps/Interactions/Dive.cs index 0fb2d3a6..b5389774 100644 --- a/Questionable/Controller/Steps/Interactions/Dive.cs +++ b/Questionable/Controller/Steps/Interactions/Dive.cs @@ -18,24 +18,25 @@ namespace Questionable.Controller.Steps.Interactions; internal static class Dive { - internal sealed class Factory(ICondition condition, ILoggerFactory loggerFactory) : SimpleTaskFactory + internal sealed class Factory : SimpleTaskFactory { public override ITask? CreateTask(Quest quest, QuestSequence sequence, QuestStep step) { if (step.InteractionType != EInteractionType.Dive) return null; - return Dive(); - } - - public ITask Dive() - { - return new DoDive(condition, loggerFactory.CreateLogger()); + return new Task(); } } - private sealed class DoDive(ICondition condition, ILogger logger) - : AbstractDelayedTask(TimeSpan.FromSeconds(5)) + internal sealed class Task : ITask + { + + public override string ToString() => "Dive"; + } + + internal sealed class DoDive(ICondition condition, ILogger logger) + : AbstractDelayedTaskExecutor(TimeSpan.FromSeconds(5)) { private readonly Queue<(uint Type, nint Key)> _keysToPress = []; private int _attempts; @@ -114,8 +115,6 @@ internal static class Dive foreach (var key in realKeys) _keysToPress.Enqueue((NativeMethods.WM_KEYUP, key)); } - - public override string ToString() => "Dive"; } private static List? GetKeysToPress(SeVirtualKey key, ModifierFlag modifier) diff --git a/Questionable/Controller/Steps/Interactions/Duty.cs b/Questionable/Controller/Steps/Interactions/Duty.cs index 975d107e..42c94d87 100644 --- a/Questionable/Controller/Steps/Interactions/Duty.cs +++ b/Questionable/Controller/Steps/Interactions/Duty.cs @@ -1,7 +1,6 @@ using System; using Dalamud.Game.ClientState.Conditions; using Dalamud.Plugin.Services; -using Microsoft.Extensions.DependencyInjection; using Questionable.Functions; using Questionable.Model; using Questionable.Model.Questing; @@ -10,7 +9,7 @@ namespace Questionable.Controller.Steps.Interactions; internal static class Duty { - internal sealed class Factory(GameFunctions gameFunctions, ICondition condition) : SimpleTaskFactory + internal sealed class Factory : SimpleTaskFactory { public override ITask? CreateTask(Quest quest, QuestSequence sequence, QuestStep step) { @@ -18,26 +17,28 @@ internal static class Duty return null; ArgumentNullException.ThrowIfNull(step.ContentFinderConditionId); - return new OpenDutyFinder(step.ContentFinderConditionId.Value, gameFunctions, condition); + return new Task(step.ContentFinderConditionId.Value); } } - private sealed class OpenDutyFinder( - uint contentFinderConditionId, - GameFunctions gameFunctions, - ICondition condition) : ITask + internal sealed record Task(uint ContentFinderConditionId) : ITask { - public bool Start() + public override string ToString() => $"OpenDutyFinder({ContentFinderConditionId})"; + } + + internal sealed class OpenDutyWindowExecutor( + GameFunctions gameFunctions, + ICondition condition) : TaskExecutor + { + protected override bool Start() { if (condition[ConditionFlag.InDutyQueue]) return false; - gameFunctions.OpenDutyFinder(contentFinderConditionId); + gameFunctions.OpenDutyFinder(Task.ContentFinderConditionId); return true; } - public ETaskResult Update() => ETaskResult.TaskComplete; - - public override string ToString() => $"OpenDutyFinder({contentFinderConditionId})"; + public override ETaskResult Update() => ETaskResult.TaskComplete; } } diff --git a/Questionable/Controller/Steps/Interactions/Emote.cs b/Questionable/Controller/Steps/Interactions/Emote.cs index 940aabb1..085b0356 100644 --- a/Questionable/Controller/Steps/Interactions/Emote.cs +++ b/Questionable/Controller/Steps/Interactions/Emote.cs @@ -1,6 +1,5 @@ using System; using System.Collections.Generic; -using Microsoft.Extensions.DependencyInjection; using Questionable.Controller.Steps.Common; using Questionable.Functions; using Questionable.Model; @@ -10,11 +9,12 @@ namespace Questionable.Controller.Steps.Interactions; internal static class Emote { - internal sealed class Factory(ChatFunctions chatFunctions, Mount.Factory mountFactory) : ITaskFactory + internal sealed class Factory : ITaskFactory { public IEnumerable CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) { - if (step.InteractionType is EInteractionType.AcceptQuest or EInteractionType.CompleteQuest) + if (step.InteractionType is EInteractionType.AcceptQuest or EInteractionType.CompleteQuest + or EInteractionType.SinglePlayerDuty) { if (step.Emote == null) return []; @@ -24,39 +24,46 @@ internal static class Emote ArgumentNullException.ThrowIfNull(step.Emote); - var unmount = mountFactory.Unmount(); + var unmount = new Mount.UnmountTask(); if (step.DataId != null) { - var task = new UseOnObject(step.Emote.Value, step.DataId.Value, chatFunctions); + var task = new UseOnObject(step.Emote.Value, step.DataId.Value); return [unmount, task]; } else { - var task = new UseOnSelf(step.Emote.Value, chatFunctions); + var task = new UseOnSelf(step.Emote.Value); return [unmount, task]; } } } - private sealed class UseOnObject(EEmote emote, uint dataId, ChatFunctions chatFunctions) : AbstractDelayedTask + internal sealed record UseOnObject(EEmote Emote, uint DataId) : ITask { - protected override bool StartInternal() - { - chatFunctions.UseEmote(dataId, emote); - return true; - } - - public override string ToString() => $"Emote({emote} on {dataId})"; + public override string ToString() => $"Emote({Emote} on {DataId})"; } - private sealed class UseOnSelf(EEmote emote, ChatFunctions chatFunctions) : AbstractDelayedTask + internal sealed class UseOnObjectExecutor(ChatFunctions chatFunctions) + : AbstractDelayedTaskExecutor { protected override bool StartInternal() { - chatFunctions.UseEmote(emote); + chatFunctions.UseEmote(Task.DataId, Task.Emote); return true; } + } - public override string ToString() => $"Emote({emote})"; + internal sealed record UseOnSelf(EEmote Emote) : ITask + { + public override string ToString() => $"Emote({Emote})"; + } + + internal sealed class UseOnSelfExecutor(ChatFunctions chatFunctions) : AbstractDelayedTaskExecutor + { + protected override bool StartInternal() + { + chatFunctions.UseEmote(Task.Emote); + return true; + } } } diff --git a/Questionable/Controller/Steps/Interactions/EquipItem.cs b/Questionable/Controller/Steps/Interactions/EquipItem.cs index 4adea079..c8159247 100644 --- a/Questionable/Controller/Steps/Interactions/EquipItem.cs +++ b/Questionable/Controller/Steps/Interactions/EquipItem.cs @@ -16,7 +16,7 @@ namespace Questionable.Controller.Steps.Interactions; internal static class EquipItem { - internal sealed class Factory(IDataManager dataManager, ILoggerFactory loggerFactory) : SimpleTaskFactory + internal sealed class Factory : SimpleTaskFactory { public override ITask? CreateTask(Quest quest, QuestSequence sequence, QuestStep step) { @@ -24,36 +24,18 @@ internal static class EquipItem return null; ArgumentNullException.ThrowIfNull(step.ItemId); - return Equip(step.ItemId.Value); - } - - private DoEquip Equip(uint itemId) - { - var item = dataManager.GetExcelSheet()!.GetRow(itemId) ?? - throw new ArgumentOutOfRangeException(nameof(itemId)); - var targetSlots = GetEquipSlot(item) ?? throw new InvalidOperationException("Not a piece of equipment"); - return new DoEquip(itemId, item, targetSlots, dataManager, loggerFactory.CreateLogger()); - } - - private static List? GetEquipSlot(Item item) - { - return item.EquipSlotCategory.Row switch - { - >= 1 and <= 11 => [(ushort)(item.EquipSlotCategory.Row - 1)], - 12 => [11, 12], // rings - 13 => [0], - 17 => [13], // soul crystal - _ => null - }; + return new Task(step.ItemId.Value); } } - private sealed class DoEquip( - uint itemId, - Item item, - List targetSlots, + internal sealed record Task(uint ItemId) : ITask + { + public override string ToString() => $"Equip({ItemId})"; + } + + internal sealed class DoEquip( IDataManager dataManager, - ILogger logger) : ITask, IToastAware + ILogger logger) : TaskExecutor, IToastAware { private const int MaxAttempts = 3; @@ -81,16 +63,22 @@ internal static class EquipItem ]; private int _attempts; + private Item _item = null!; + private List _targetSlots = null!; private DateTime _continueAt = DateTime.MaxValue; - public bool Start() + protected override bool Start() { + _item = dataManager.GetExcelSheet()!.GetRow(Task.ItemId) ?? + throw new ArgumentOutOfRangeException(nameof(Task.ItemId)); + _targetSlots = GetEquipSlot(_item) ?? throw new InvalidOperationException("Not a piece of equipment"); + Equip(); _continueAt = DateTime.Now.AddSeconds(1); return true; } - public unsafe ETaskResult Update() + public override unsafe ETaskResult Update() { if (DateTime.Now < _continueAt) return ETaskResult.StillRunning; @@ -99,10 +87,10 @@ internal static class EquipItem if (inventoryManager == null) return ETaskResult.StillRunning; - foreach (ushort x in targetSlots) + foreach (ushort x in _targetSlots) { var itemSlot = inventoryManager->GetInventorySlot(InventoryType.EquippedItems, x); - if (itemSlot != null && itemSlot->ItemId == itemId) + if (itemSlot != null && itemSlot->ItemId == Task.ItemId) return ETaskResult.TaskComplete; } @@ -125,12 +113,12 @@ internal static class EquipItem if (equippedContainer == null) return; - foreach (ushort slot in targetSlots) + foreach (ushort slot in _targetSlots) { var itemSlot = equippedContainer->GetInventorySlot(slot); - if (itemSlot != null && itemSlot->ItemId == itemId) + if (itemSlot != null && itemSlot->ItemId == Task.ItemId) { - logger.LogInformation("Already equipped {Item}, skipping step", item.Name?.ToString()); + logger.LogInformation("Already equipped {Item}, skipping step", _item.Name?.ToString()); return; } } @@ -141,24 +129,24 @@ internal static class EquipItem if (sourceContainer == null) continue; - if (inventoryManager->GetItemCountInContainer(itemId, sourceInventoryType, true) == 0 && - inventoryManager->GetItemCountInContainer(itemId, sourceInventoryType) == 0) + if (inventoryManager->GetItemCountInContainer(Task.ItemId, sourceInventoryType, true) == 0 && + inventoryManager->GetItemCountInContainer(Task.ItemId, sourceInventoryType) == 0) continue; for (ushort sourceSlot = 0; sourceSlot < sourceContainer->Size; sourceSlot++) { var sourceItem = sourceContainer->GetInventorySlot(sourceSlot); - if (sourceItem == null || sourceItem->ItemId != itemId) + if (sourceItem == null || sourceItem->ItemId != Task.ItemId) continue; // Move the item to the first available slot - ushort targetSlot = targetSlots + ushort targetSlot = _targetSlots .Where(x => { var itemSlot = inventoryManager->GetInventorySlot(InventoryType.EquippedItems, x); return itemSlot == null || itemSlot->ItemId == 0; }) - .Concat(targetSlots).First(); + .Concat(_targetSlots).First(); logger.LogInformation( "Equipping item from {SourceInventory}, {SourceSlot} to {TargetInventory}, {TargetSlot}", @@ -170,9 +158,21 @@ internal static class EquipItem return; } } + + throw new TaskException($"Could not equip item {Task.ItemId}."); } - public override string ToString() => $"Equip({item.Name})"; + private static List? GetEquipSlot(Item item) + { + return item.EquipSlotCategory.Row switch + { + >= 1 and <= 11 => [(ushort)(item.EquipSlotCategory.Row - 1)], + 12 => [11, 12], // rings + 13 => [0], + 17 => [13], // soul crystal + _ => null + }; + } public bool OnErrorToast(SeString message) { diff --git a/Questionable/Controller/Steps/Interactions/EquipRecommended.cs b/Questionable/Controller/Steps/Interactions/EquipRecommended.cs index 5ff7ab35..cd4f7982 100644 --- a/Questionable/Controller/Steps/Interactions/EquipRecommended.cs +++ b/Questionable/Controller/Steps/Interactions/EquipRecommended.cs @@ -10,23 +10,18 @@ namespace Questionable.Controller.Steps.Interactions; internal static class EquipRecommended { - internal sealed class Factory(IClientState clientState, IChatGui chatGui) : SimpleTaskFactory + internal sealed class Factory : SimpleTaskFactory { public override ITask? CreateTask(Quest quest, QuestSequence sequence, QuestStep step) { if (step.InteractionType != EInteractionType.EquipRecommended) return null; - return DoEquip(); - } - - public ITask DoEquip() - { - return new DoEquipRecommended(clientState, chatGui); + return new EquipTask(); } } - internal sealed class BeforeDutyOrInstance(IClientState clientState, IChatGui chatGui) : SimpleTaskFactory + internal sealed class BeforeDutyOrInstance : SimpleTaskFactory { public override ITask? CreateTask(Quest quest, QuestSequence sequence, QuestStep step) { @@ -35,21 +30,26 @@ internal static class EquipRecommended step.InteractionType != EInteractionType.Combat) return null; - return new DoEquipRecommended(clientState, chatGui); + return new EquipTask(); } } - private sealed unsafe class DoEquipRecommended(IClientState clientState, IChatGui chatGui) : ITask + internal sealed class EquipTask : ITask + { + public override string ToString() => "EquipRecommended"; + } + + internal sealed unsafe class DoEquipRecommended(IClientState clientState, IChatGui chatGui) : TaskExecutor { private bool _equipped; - public bool Start() + protected override bool Start() { RecommendEquipModule.Instance()->SetupForClassJob((byte)clientState.LocalPlayer!.ClassJob.Id); return true; } - public ETaskResult Update() + public override ETaskResult Update() { var recommendedEquipModule = RecommendEquipModule.Instance(); if (recommendedEquipModule->IsUpdating) @@ -94,7 +94,5 @@ internal static class EquipRecommended return ETaskResult.TaskComplete; } - - public override string ToString() => "EquipRecommended"; } } diff --git a/Questionable/Controller/Steps/Interactions/Interact.cs b/Questionable/Controller/Steps/Interactions/Interact.cs index 0482d88b..ac8f5109 100644 --- a/Questionable/Controller/Steps/Interactions/Interact.cs +++ b/Questionable/Controller/Steps/Interactions/Interact.cs @@ -5,9 +5,9 @@ using Dalamud.Game.ClientState.Objects.Enums; using Dalamud.Game.ClientState.Objects.Types; using Dalamud.Plugin.Services; using FFXIVClientStructs.FFXIV.Client.Game; -using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Questionable.Controller.Steps.Shared; +using Questionable.Controller.Utils; using Questionable.Functions; using Questionable.Model; using Questionable.Model.Questing; @@ -16,8 +16,7 @@ namespace Questionable.Controller.Steps.Interactions; internal static class Interact { - internal sealed class Factory(GameFunctions gameFunctions, ICondition condition, ILoggerFactory loggerFactory) - : ITaskFactory + internal sealed class Factory(Configuration configuration) : ITaskFactory { public IEnumerable CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) { @@ -28,9 +27,25 @@ internal static class Interact if (step.Emote != null) yield break; + if (step.ChatMessage != null) + yield break; + + if (step.ItemId != null) + yield break; + if (step.DataId == null) yield break; } + else if (step.InteractionType == EInteractionType.PurchaseItem) + { + if (step.DataId == null) + yield break; + } + else if (step.InteractionType == EInteractionType.Snipe) + { + if (!configuration.General.AutomaticallyCompleteSnipeTasks) + yield break; + } else if (step.InteractionType != EInteractionType.Interact) yield break; @@ -40,47 +55,64 @@ internal static class Interact if (sequence.Sequence == 0 && sequence.Steps.IndexOf(step) == 0) yield return new WaitAtEnd.WaitDelay(); - yield return Interact(step.DataId.Value, quest, step.InteractionType, - step.TargetTerritoryId != null || quest.Id is SatisfactionSupplyNpcId, step.PickUpItemId); - } - - internal ITask Interact(uint dataId, Quest? quest, EInteractionType interactionType, - bool skipMarkerCheck = false, uint? pickUpItemId = null) - { - return new DoInteract(dataId, quest, interactionType, skipMarkerCheck, pickUpItemId, gameFunctions, - condition, loggerFactory.CreateLogger()); + yield return new Task(step.DataId.Value, quest, step.InteractionType, + step.TargetTerritoryId != null || quest.Id is SatisfactionSupplyNpcId || + step.SkipConditions is { StepIf.Never: true } || step.InteractionType == EInteractionType.PurchaseItem, + step.PickUpItemId, step.SkipConditions?.StepIf, step.CompletionQuestVariablesFlags); } } + internal sealed record Task( + uint DataId, + Quest? Quest, + EInteractionType InteractionType, + bool SkipMarkerCheck = false, + uint? PickUpItemId = null, + SkipStepConditions? SkipConditions = null, + List? CompletionQuestVariablesFlags = null) : ITask + { + public List CompletionQuestVariablesFlags { get; } = CompletionQuestVariablesFlags ?? []; + + public bool HasCompletionQuestVariablesFlags { get; } = + Quest != null && + CompletionQuestVariablesFlags != null && + QuestWorkUtils.HasCompletionFlags(CompletionQuestVariablesFlags); + + public bool ShouldRedoOnInterrupt() => true; + + public override string ToString() => + $"Interact{(HasCompletionQuestVariablesFlags ? "*" : "")}({DataId})"; + } + internal sealed class DoInteract( - uint dataId, - Quest? quest, - EInteractionType interactionType, - bool skipMarkerCheck, - uint? pickUpItemId, GameFunctions gameFunctions, + QuestFunctions questFunctions, ICondition condition, ILogger logger) - : ITask, IConditionChangeAware + : TaskExecutor, IConditionChangeAware { private bool _needsUnmount; private EInteractionState _interactionState = EInteractionState.None; private DateTime _continueAt = DateTime.MinValue; - public Quest? Quest => quest; + public Quest? Quest => Task.Quest; + public EInteractionType InteractionType { get; set; } - public EInteractionType InteractionType + protected override bool Start() { - get => interactionType; - set => interactionType = value; - } + InteractionType = Task.InteractionType; - public bool Start() - { - IGameObject? gameObject = gameFunctions.FindObjectByDataId(dataId); + IGameObject? gameObject = gameFunctions.FindObjectByDataId(Task.DataId); if (gameObject == null) { - logger.LogWarning("No game object with dataId {DataId}", dataId); + logger.LogWarning("No game object with dataId {DataId}", Task.DataId); + return false; + } + + if (!gameObject.IsTargetable && Task.SkipConditions is { Never: false, NotTargetable: true }) + { + logger.LogInformation("Not interacting with {DataId} because it is not targetable (but skippable)", + Task.DataId); return false; } @@ -88,7 +120,7 @@ internal static class Interact if (!gameObject.IsTargetable && condition[ConditionFlag.Mounted] && gameObject.ObjectKind != ObjectKind.GatheringPoint) { - logger.LogInformation("Preparing interaction for {DataId} by unmounting", dataId); + logger.LogInformation("Preparing interaction for {DataId} by unmounting", Task.DataId); _needsUnmount = true; gameFunctions.Unmount(); _continueAt = DateTime.Now.AddSeconds(1); @@ -97,17 +129,14 @@ internal static class Interact if (gameObject.IsTargetable && HasAnyMarker(gameObject)) { - _interactionState = gameFunctions.InteractWith(gameObject) - ? EInteractionState.InteractionTriggered - : EInteractionState.None; - _continueAt = DateTime.Now.AddSeconds(0.5); + TriggerInteraction(gameObject); return true; } return true; } - public ETaskResult Update() + public override ETaskResult Update() { if (DateTime.Now <= _continueAt) return ETaskResult.StillRunning; @@ -124,48 +153,70 @@ internal static class Interact _needsUnmount = false; } - if (pickUpItemId != null) + if (Task.PickUpItemId != null) { unsafe { InventoryManager* inventoryManager = InventoryManager.Instance(); - if (inventoryManager->GetInventoryItemCount(pickUpItemId.Value) > 0) + if (inventoryManager->GetInventoryItemCount(Task.PickUpItemId.Value) > 0) return ETaskResult.TaskComplete; } } - else + else if (InteractionType == EInteractionType.Gather && condition[ConditionFlag.Gathering]) + return ETaskResult.TaskComplete; + else if (Quest != null && Task.HasCompletionQuestVariablesFlags) { - if (_interactionState == EInteractionState.InteractionConfirmed) - return ETaskResult.TaskComplete; - - if (interactionType == EInteractionType.InternalGather && condition[ConditionFlag.Gathering]) + var questWork = questFunctions.GetQuestProgressInfo(Quest.Id); + return questWork != null && + QuestWorkUtils.MatchesQuestWork(Task.CompletionQuestVariablesFlags, questWork) + ? ETaskResult.TaskComplete + : ETaskResult.StillRunning; + } + else if (ProgressContext != null) + { + if (ProgressContext.WasInterrupted()) + return ETaskResult.StillRunning; + else if (ProgressContext.WasSuccessful() || + _interactionState == EInteractionState.InteractionConfirmed) return ETaskResult.TaskComplete; } - IGameObject? gameObject = gameFunctions.FindObjectByDataId(dataId); + IGameObject? gameObject = gameFunctions.FindObjectByDataId(Task.DataId); if (gameObject == null || !gameObject.IsTargetable || !HasAnyMarker(gameObject)) return ETaskResult.StillRunning; - _interactionState = gameFunctions.InteractWith(gameObject) - ? EInteractionState.InteractionTriggered - : EInteractionState.None; - _continueAt = DateTime.Now.AddSeconds(0.5); + TriggerInteraction(gameObject); return ETaskResult.StillRunning; } + private void TriggerInteraction(IGameObject gameObject) + { + ProgressContext = + InteractionProgressContext.FromActionUseOrDefault(() => + { + if (gameFunctions.InteractWith(gameObject)) + _interactionState = EInteractionState.InteractionTriggered; + else + _interactionState = EInteractionState.None; + return _interactionState != EInteractionState.None; + }); + _continueAt = DateTime.Now.AddSeconds(0.5); + } + private unsafe bool HasAnyMarker(IGameObject gameObject) { - if (skipMarkerCheck || gameObject.ObjectKind != ObjectKind.EventNpc) + if (Task.SkipMarkerCheck || gameObject.ObjectKind != ObjectKind.EventNpc) return true; var gameObjectStruct = (FFXIVClientStructs.FFXIV.Client.Game.Object.GameObject*)gameObject.Address; return gameObjectStruct->NamePlateIconId != 0; } - public override string ToString() => $"Interact({dataId})"; - public void OnConditionChange(ConditionFlag flag, bool value) { + if (ProgressContext != null && (ProgressContext.WasInterrupted() || ProgressContext.WasSuccessful())) + return; + logger.LogDebug("Condition change: {Flag} = {Value}", flag, value); if (_interactionState == EInteractionState.InteractionTriggered && flag is ConditionFlag.OccupiedInQuestEvent or ConditionFlag.OccupiedInEvent && diff --git a/Questionable/Controller/Steps/Interactions/Jump.cs b/Questionable/Controller/Steps/Interactions/Jump.cs index 464eaace..f7b9892d 100644 --- a/Questionable/Controller/Steps/Interactions/Jump.cs +++ b/Questionable/Controller/Steps/Interactions/Jump.cs @@ -1,4 +1,5 @@ using System; +using Dalamud.Game.ClientState.Conditions; using Dalamud.Plugin.Services; using FFXIVClientStructs.FFXIV.Client.Game; using Microsoft.Extensions.DependencyInjection; @@ -11,11 +12,7 @@ namespace Questionable.Controller.Steps.Interactions; internal static class Jump { - internal sealed class Factory( - MovementController movementController, - IClientState clientState, - IFramework framework, - ILoggerFactory loggerFactory) : SimpleTaskFactory + internal sealed class Factory : SimpleTaskFactory { public override ITask? CreateTask(Quest quest, QuestSequence sequence, QuestStep step) { @@ -25,39 +22,42 @@ internal static class Jump ArgumentNullException.ThrowIfNull(step.JumpDestination); if (step.JumpDestination.Type == EJumpType.SingleJump) - return SingleJump(step.DataId, step.JumpDestination, step.Comment); + return new SingleJumpTask(step.DataId, step.JumpDestination, step.Comment); else - return RepeatedJumps(step.DataId, step.JumpDestination, step.Comment); - } - - public ITask SingleJump(uint? dataId, JumpDestination jumpDestination, string? comment) - { - return new DoSingleJump(dataId, jumpDestination, comment, movementController, clientState, framework); - } - - public ITask RepeatedJumps(uint? dataId, JumpDestination jumpDestination, string? comment) - { - return new DoRepeatedJumps(dataId, jumpDestination, comment, movementController, clientState, framework, - loggerFactory.CreateLogger()); + return new RepeatedJumpTask(step.DataId, step.JumpDestination, step.Comment); } } - private class DoSingleJump( - uint? dataId, - JumpDestination jumpDestination, - string? comment, + internal interface IJumpTask : ITask + { + uint? DataId { get; } + JumpDestination JumpDestination { get; } + string? Comment { get; } + } + + internal sealed record SingleJumpTask( + uint? DataId, + JumpDestination JumpDestination, + string? Comment) : IJumpTask + { + public override string ToString() => $"Jump({Comment})"; + } + + internal abstract class JumpBase( MovementController movementController, IClientState clientState, - IFramework framework) : ITask + IFramework framework) : TaskExecutor + where T : class, IJumpTask { - public virtual bool Start() + protected override bool Start() { - float stopDistance = jumpDestination.CalculateStopDistance(); - if ((clientState.LocalPlayer!.Position - jumpDestination.Position).Length() <= stopDistance) + float stopDistance = Task.JumpDestination.CalculateStopDistance(); + if ((clientState.LocalPlayer!.Position - Task.JumpDestination.Position).Length() <= stopDistance) return false; - movementController.NavigateTo(EMovementType.Quest, dataId, [jumpDestination.Position], false, false, - jumpDestination.StopDistance ?? stopDistance); + movementController.NavigateTo(EMovementType.Quest, Task.DataId, [Task.JumpDestination.Position], false, + false, + Task.JumpDestination.StopDistance ?? stopDistance); framework.RunOnTick(() => { unsafe @@ -65,11 +65,11 @@ internal static class Jump ActionManager.Instance()->UseAction(ActionType.GeneralAction, 2); } }, - TimeSpan.FromSeconds(jumpDestination.DelaySeconds ?? 0.5f)); + TimeSpan.FromSeconds(Task.JumpDestination.DelaySeconds ?? 0.5f)); return true; } - public virtual ETaskResult Update() + public override ETaskResult Update() { if (movementController.IsPathfinding || movementController.IsPathRunning) return ETaskResult.StillRunning; @@ -80,57 +80,62 @@ internal static class Jump return ETaskResult.TaskComplete; } - - public override string ToString() => $"Jump({comment})"; } - private sealed class DoRepeatedJumps( - uint? dataId, - JumpDestination jumpDestination, - string? comment, + internal sealed class DoSingleJump( + MovementController movementController, + IClientState clientState, + IFramework framework) : JumpBase(movementController, clientState, framework); + + internal sealed record RepeatedJumpTask( + uint? DataId, + JumpDestination JumpDestination, + string? Comment) : IJumpTask + { + public override string ToString() => $"RepeatedJump({Comment})"; + } + + internal sealed class DoRepeatedJumps( MovementController movementController, IClientState clientState, IFramework framework, + ICondition condition, ILogger logger) - : DoSingleJump(dataId, jumpDestination, comment, movementController, clientState, framework) + : JumpBase(movementController, clientState, framework) { - private readonly JumpDestination _jumpDestination = jumpDestination; - private readonly string? _comment = comment; private readonly IClientState _clientState = clientState; private DateTime _continueAt = DateTime.MinValue; private int _attempts; - public override bool Start() + protected override bool Start() { - _continueAt = DateTime.Now + TimeSpan.FromSeconds(2 * (_jumpDestination.DelaySeconds ?? 0.5f)); + _continueAt = DateTime.Now + TimeSpan.FromSeconds(2 * (Task.JumpDestination.DelaySeconds ?? 0.5f)); return base.Start(); } public override ETaskResult Update() { - if (DateTime.Now < _continueAt) + if (DateTime.Now < _continueAt || condition[ConditionFlag.Jumping]) return ETaskResult.StillRunning; - float stopDistance = _jumpDestination.CalculateStopDistance(); - if ((_clientState.LocalPlayer!.Position - _jumpDestination.Position).Length() <= stopDistance || - _clientState.LocalPlayer.Position.Y >= _jumpDestination.Position.Y - 0.5f) + float stopDistance = Task.JumpDestination.CalculateStopDistance(); + if ((_clientState.LocalPlayer!.Position - Task.JumpDestination.Position).Length() <= stopDistance || + _clientState.LocalPlayer.Position.Y >= Task.JumpDestination.Position.Y - 0.5f) return ETaskResult.TaskComplete; logger.LogTrace("Y-Heights for jumps: player={A}, target={B}", _clientState.LocalPlayer.Position.Y, - _jumpDestination.Position.Y - 0.5f); + Task.JumpDestination.Position.Y - 0.5f); unsafe { - ActionManager.Instance()->UseAction(ActionType.GeneralAction, 2); + if (ActionManager.Instance()->UseAction(ActionType.GeneralAction, 2)) + ++_attempts; } - ++_attempts; if (_attempts >= 50) throw new TaskException("Tried to jump too many times, didn't reach the target"); - _continueAt = DateTime.Now + TimeSpan.FromSeconds(_jumpDestination.DelaySeconds ?? 0.5f); + _continueAt = DateTime.Now + TimeSpan.FromSeconds(Task.JumpDestination.DelaySeconds ?? 0.5f); return ETaskResult.StillRunning; } - - public override string ToString() => $"RepeatedJump({_comment})"; } } diff --git a/Questionable/Controller/Steps/Interactions/PurchaseItem.cs b/Questionable/Controller/Steps/Interactions/PurchaseItem.cs new file mode 100644 index 00000000..e0cf5961 --- /dev/null +++ b/Questionable/Controller/Steps/Interactions/PurchaseItem.cs @@ -0,0 +1,22 @@ +using Questionable.Model; +using Questionable.Model.Questing; + +namespace Questionable.Controller.Steps.Interactions; + +internal static class PurchaseItem +{ + internal sealed class Factory : SimpleTaskFactory + { + public override ITask? CreateTask(Quest quest, QuestSequence sequence, QuestStep step) + { + if (step.InteractionType != EInteractionType.PurchaseItem) + return null; + throw new System.NotImplementedException(); + } + } + + internal sealed class PurchaseRequest + { + + } +} diff --git a/Questionable/Controller/Steps/Interactions/Say.cs b/Questionable/Controller/Steps/Interactions/Say.cs index 7b8855a1..f13ab4ab 100644 --- a/Questionable/Controller/Steps/Interactions/Say.cs +++ b/Questionable/Controller/Steps/Interactions/Say.cs @@ -10,14 +10,16 @@ namespace Questionable.Controller.Steps.Interactions; internal static class Say { - internal sealed class Factory( - ChatFunctions chatFunctions, - Mount.Factory mountFactory, - ExcelFunctions excelFunctions) : ITaskFactory + internal sealed class Factory(ExcelFunctions excelFunctions) : ITaskFactory { public IEnumerable CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) { - if (step.InteractionType != EInteractionType.Say) + if (step.InteractionType is EInteractionType.AcceptQuest or EInteractionType.CompleteQuest) + { + if (step.ChatMessage == null) + return []; + } + else if (step.InteractionType != EInteractionType.Say) return []; @@ -28,20 +30,23 @@ internal static class Say .GetString(); ArgumentNullException.ThrowIfNull(excelString); - var unmount = mountFactory.Unmount(); - var task = new UseChat(excelString, chatFunctions); + var unmount = new Mount.UnmountTask(); + var task = new Task(excelString); return [unmount, task]; } } - private sealed class UseChat(string chatMessage, ChatFunctions chatFunctions) : AbstractDelayedTask + internal sealed record Task(string ChatMessage) : ITask + { + public override string ToString() => $"Say({ChatMessage})"; + } + + internal sealed class UseChat(ChatFunctions chatFunctions) : AbstractDelayedTaskExecutor { protected override bool StartInternal() { - chatFunctions.ExecuteCommand($"/say {chatMessage}"); + chatFunctions.ExecuteCommand($"/say {Task.ChatMessage}"); return true; } - - public override string ToString() => $"Say({chatMessage})"; } } diff --git a/Questionable/Controller/Steps/Interactions/UseItem.cs b/Questionable/Controller/Steps/Interactions/UseItem.cs index 2481e8f5..e0753758 100644 --- a/Questionable/Controller/Steps/Interactions/UseItem.cs +++ b/Questionable/Controller/Steps/Interactions/UseItem.cs @@ -5,9 +5,7 @@ using System.Linq; using System.Numerics; using Dalamud.Game.ClientState.Conditions; using Dalamud.Plugin.Services; -using FFXIVClientStructs.FFXIV.Application.Network.WorkDefinitions; using FFXIVClientStructs.FFXIV.Client.Game; -using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Questionable.Controller.Steps.Common; using Questionable.Controller.Steps.Shared; @@ -23,31 +21,25 @@ namespace Questionable.Controller.Steps.Interactions; internal static class UseItem { - public const int VesperBayAetheryteTicket = 30362; - internal sealed class Factory( - Mount.Factory mountFactory, - MoveTo.Factory moveFactory, - Interact.Factory interactFactory, - AetheryteShortcut.Factory aetheryteShortcutFactory, - AethernetShortcut.Factory aethernetShortcutFactory, - GameFunctions gameFunctions, - QuestFunctions questFunctions, - ICondition condition, IClientState clientState, TerritoryData territoryData, - ILoggerFactory loggerFactory, ILogger logger) : ITaskFactory { public IEnumerable CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) { - if (step.InteractionType != EInteractionType.UseItem) + if (step.InteractionType is EInteractionType.SinglePlayerDuty) + { + if (step.ItemId == null) + return []; + } + else if (step.InteractionType != EInteractionType.UseItem) return []; ArgumentNullException.ThrowIfNull(step.ItemId); - if (step.ItemId == VesperBayAetheryteTicket) + if (step.ItemId == QuestStep.VesperBayAetheryteTicket) { unsafe { @@ -56,7 +48,7 @@ internal static class UseItem return CreateVesperBayFallbackTask(); } - var task = OnSelf(quest.Id, step.ItemId.Value, step.CompletionQuestVariablesFlags); + var task = new UseOnSelf(quest.Id, step.ItemId.Value, step.CompletionQuestVariablesFlags); int currentStepIndex = sequence.Steps.IndexOf(step); QuestStep? nextStep = sequence.Steps.Skip(currentStepIndex + 1).FirstOrDefault(); @@ -64,71 +56,46 @@ internal static class UseItem return [ task, - new WaitConditionTask(() => clientState.TerritoryType == 140, + new WaitCondition.Task(() => clientState.TerritoryType == 140, $"Wait(territory: {territoryData.GetNameAndId(140)})"), - mountFactory.Mount(140, + new Mount.MountTask(140, nextPosition != null ? Mount.EMountIf.AwayFromPosition : Mount.EMountIf.Always, nextPosition), - moveFactory.Move(new MoveTo.MoveParams(140, new(-408.92343f, 23.167036f, -351.16223f), 0.25f, - DataId: null, DisableNavMesh: true, Sprint: false, Fly: false)) + new MoveTo.MoveTask(140, new(-408.92343f, 23.167036f, -351.16223f), null, 0.25f, + DataId: null, DisableNavmesh: true, Sprint: false, Fly: false, + InteractionType: EInteractionType.WalkTo) ]; } - var unmount = mountFactory.Unmount(); + var unmount = new Mount.UnmountTask(); if (step.GroundTarget == true) { ITask task; if (step.DataId != null) - task = OnGroundTarget(quest.Id, step.DataId.Value, step.ItemId.Value, + task = new UseOnGround(quest.Id, step.DataId.Value, step.ItemId.Value, step.CompletionQuestVariablesFlags); else { ArgumentNullException.ThrowIfNull(step.Position); - task = OnPosition(quest.Id, step.Position.Value, step.ItemId.Value, + task = new UseOnPosition(quest.Id, step.Position.Value, step.ItemId.Value, step.CompletionQuestVariablesFlags); } - return [unmount, task]; + return [unmount, new WaitAtEnd.WaitDelay(TimeSpan.FromSeconds(0.5)), task]; } else if (step.DataId != null) { - var task = OnObject(quest.Id, step.DataId.Value, step.ItemId.Value, step.CompletionQuestVariablesFlags); + var task = new UseOnObject(quest.Id, step.DataId.Value, step.ItemId.Value, + step.CompletionQuestVariablesFlags); return [unmount, task]; } else { - var task = OnSelf(quest.Id, step.ItemId.Value, step.CompletionQuestVariablesFlags); + var task = new UseOnSelf(quest.Id, step.ItemId.Value, step.CompletionQuestVariablesFlags); return [unmount, task]; } } - public ITask OnGroundTarget(ElementId questId, uint dataId, uint itemId, - List completionQuestVariablesFlags) - { - return new UseOnGround(questId, dataId, itemId, completionQuestVariablesFlags, gameFunctions, - questFunctions, condition, loggerFactory.CreateLogger()); - } - - public ITask OnPosition(ElementId questId, Vector3 position, uint itemId, - List completionQuestVariablesFlags) - { - return new UseOnPosition(questId, position, itemId, completionQuestVariablesFlags, gameFunctions, - questFunctions, condition, loggerFactory.CreateLogger()); - } - - public ITask OnObject(ElementId questId, uint dataId, uint itemId, - List completionQuestVariablesFlags, bool startingCombat = false) - { - return new UseOnObject(questId, dataId, itemId, completionQuestVariablesFlags, startingCombat, - questFunctions, gameFunctions, condition, loggerFactory.CreateLogger()); - } - - public ITask OnSelf(ElementId questId, uint itemId, List completionQuestVariablesFlags) - { - return new Use(questId, itemId, completionQuestVariablesFlags, gameFunctions, questFunctions, condition, - loggerFactory.CreateLogger()); - } - private IEnumerable CreateVesperBayFallbackTask() { logger.LogWarning("No vesper bay aetheryte tickets in inventory, navigating via ferry in Limsa instead"); @@ -136,36 +103,41 @@ internal static class UseItem uint npcId = 1003540; ushort territoryId = 129; Vector3 destination = new(-360.9217f, 8f, 38.92566f); - yield return aetheryteShortcutFactory.Use(null, null, EAetheryteLocation.Limsa, territoryId); - yield return aethernetShortcutFactory.Use(EAetheryteLocation.Limsa, EAetheryteLocation.LimsaArcanist); + yield return new AetheryteShortcut.Task(null, null, EAetheryteLocation.Limsa, territoryId); + yield return new AethernetShortcut.Task(EAetheryteLocation.Limsa, EAetheryteLocation.LimsaArcanist); yield return new WaitAtEnd.WaitDelay(); - yield return - moveFactory.Move(new MoveTo.MoveParams(territoryId, destination, DataId: npcId, Sprint: false)); - yield return interactFactory.Interact(npcId, null, EInteractionType.None, true); + yield return new MoveTo.MoveTask(territoryId, destination, DataId: npcId, Sprint: false, + InteractionType: EInteractionType.WalkTo); + yield return new Interact.Task(npcId, null, EInteractionType.None, true); } } - private abstract class UseItemBase( - ElementId? questId, - uint itemId, - IList completionQuestVariablesFlags, - bool startingCombat, + internal interface IUseItemBase : ITask + { + ElementId? QuestId { get; } + uint ItemId { get; } + IList CompletionQuestVariablesFlags { get; } + bool StartingCombat { get; } + } + + internal abstract class UseItemExecutorBase( QuestFunctions questFunctions, ICondition condition, - ILogger logger) : ITask + ILogger logger) : TaskExecutor + where T : class, IUseItemBase { private bool _usedItem; private DateTime _continueAt; private int _itemCount; - public ElementId? QuestId => questId; - public uint ItemId => itemId; - public IList CompletionQuestVariablesFlags => completionQuestVariablesFlags; - public bool StartingCombat => startingCombat; + private ElementId? QuestId => Task.QuestId; + protected uint ItemId => Task.ItemId; + private IList CompletionQuestVariablesFlags => Task.CompletionQuestVariablesFlags; + private bool StartingCombat => Task.StartingCombat; protected abstract bool UseItem(); - public unsafe bool Start() + protected override unsafe bool Start() { InventoryManager* inventoryManager = InventoryManager.Instance(); if (inventoryManager == null) @@ -175,12 +147,12 @@ internal static class UseItem if (_itemCount == 0) throw new TaskException($"Don't have any {ItemId} in inventory (checks NQ only)"); - _usedItem = UseItem(); + ProgressContext = InteractionProgressContext.FromActionUseOrDefault(() => _usedItem = UseItem()); _continueAt = DateTime.Now.Add(GetRetryDelay()); return true; } - public unsafe ETaskResult Update() + public override unsafe ETaskResult Update() { if (QuestId is QuestId realQuestId && QuestWorkUtils.HasCompletionFlags(CompletionQuestVariablesFlags)) { @@ -196,7 +168,7 @@ internal static class UseItem if (StartingCombat && condition[ConditionFlag.InCombat]) return ETaskResult.TaskComplete; - if (ItemId == VesperBayAetheryteTicket && _usedItem) + if (ItemId == QuestStep.VesperBayAetheryteTicket && _usedItem) { InventoryManager* inventoryManager = InventoryManager.Instance(); if (inventoryManager == null) @@ -218,7 +190,7 @@ internal static class UseItem if (!_usedItem) { - _usedItem = UseItem(); + ProgressContext = InteractionProgressContext.FromActionUseOrDefault(() => _usedItem = UseItem()); _continueAt = DateTime.Now.Add(GetRetryDelay()); return ETaskResult.StillRunning; } @@ -228,76 +200,92 @@ internal static class UseItem private TimeSpan GetRetryDelay() { - if (ItemId == VesperBayAetheryteTicket) + if (ItemId == QuestStep.VesperBayAetheryteTicket) return TimeSpan.FromSeconds(11); else return TimeSpan.FromSeconds(5); } } + internal sealed record UseOnGround( + ElementId? QuestId, + uint DataId, + uint ItemId, + IList CompletionQuestVariablesFlags) : IUseItemBase + { + public bool StartingCombat => false; + public override string ToString() => $"UseItem({ItemId} on ground at {DataId})"; + } - private sealed class UseOnGround( - ElementId? questId, - uint dataId, - uint itemId, - IList completionQuestVariablesFlags, + internal sealed class UseOnGroundExecutor( GameFunctions gameFunctions, QuestFunctions questFunctions, ICondition condition, - ILogger logger) - : UseItemBase(questId, itemId, completionQuestVariablesFlags, false, questFunctions, condition, logger) + ILogger logger) + : UseItemExecutorBase(questFunctions, condition, logger) { - protected override bool UseItem() => gameFunctions.UseItemOnGround(dataId, ItemId); - - public override string ToString() => $"UseItem({ItemId} on ground at {dataId})"; + protected override bool UseItem() => gameFunctions.UseItemOnGround(Task.DataId, ItemId); } - private sealed class UseOnPosition( - ElementId? questId, - Vector3 position, - uint itemId, - IList completionQuestVariablesFlags, + internal sealed record UseOnPosition( + ElementId? QuestId, + Vector3 Position, + uint ItemId, + IList CompletionQuestVariablesFlags) + : IUseItemBase + { + public bool StartingCombat => false; + + public override string ToString() => + $"UseItem({ItemId} on ground at {Position.ToString("G", CultureInfo.InvariantCulture)})"; + } + + internal sealed class UseOnPositionExecutor( GameFunctions gameFunctions, QuestFunctions questFunctions, ICondition condition, ILogger logger) - : UseItemBase(questId, itemId, completionQuestVariablesFlags, false, questFunctions, condition, logger) + : UseItemExecutorBase(questFunctions, condition, logger) { - protected override bool UseItem() => gameFunctions.UseItemOnPosition(position, ItemId); - - public override string ToString() => - $"UseItem({ItemId} on ground at {position.ToString("G", CultureInfo.InvariantCulture)})"; + protected override bool UseItem() => gameFunctions.UseItemOnPosition(Task.Position, ItemId); } - private sealed class UseOnObject( - ElementId? questId, - uint dataId, - uint itemId, - IList completionQuestVariablesFlags, - bool startingCombat, + internal sealed record UseOnObject( + ElementId? QuestId, + uint DataId, + uint ItemId, + IList CompletionQuestVariablesFlags, + bool StartingCombat = false) : IUseItemBase + { + public override string ToString() => $"UseItem({ItemId} on {DataId})"; + } + + internal sealed class UseOnObjectExecutor( QuestFunctions questFunctions, GameFunctions gameFunctions, ICondition condition, ILogger logger) - : UseItemBase(questId, itemId, completionQuestVariablesFlags, startingCombat, questFunctions, condition, logger) + : UseItemExecutorBase(questFunctions, condition, logger) { - protected override bool UseItem() => gameFunctions.UseItem(dataId, ItemId); - - public override string ToString() => $"UseItem({ItemId} on {dataId})"; + protected override bool UseItem() => gameFunctions.UseItem(Task.DataId, ItemId); } - private sealed class Use( - ElementId? questId, - uint itemId, - IList completionQuestVariablesFlags, + internal sealed record UseOnSelf( + ElementId? QuestId, + uint ItemId, + IList CompletionQuestVariablesFlags) : IUseItemBase + { + public bool StartingCombat => false; + public override string ToString() => $"UseItem({ItemId})"; + } + + internal sealed class UseOnSelfExecutor( GameFunctions gameFunctions, QuestFunctions questFunctions, ICondition condition, - ILogger logger) - : UseItemBase(questId, itemId, completionQuestVariablesFlags, false, questFunctions, condition, logger) + ILogger logger) + : UseItemExecutorBase(questFunctions, condition, logger) { protected override bool UseItem() => gameFunctions.UseItem(ItemId); - - public override string ToString() => $"UseItem({ItemId})"; } } diff --git a/Questionable/Controller/Steps/Leves/InitiateLeve.cs b/Questionable/Controller/Steps/Leves/InitiateLeve.cs index 7b12c95e..ab584cef 100644 --- a/Questionable/Controller/Steps/Leves/InitiateLeve.cs +++ b/Questionable/Controller/Steps/Leves/InitiateLeve.cs @@ -7,9 +7,7 @@ using FFXIVClientStructs.FFXIV.Client.Game.UI; using FFXIVClientStructs.FFXIV.Client.UI.Agent; using FFXIVClientStructs.FFXIV.Component.GUI; using LLib.GameUI; -using Microsoft.Extensions.DependencyInjection; using Questionable.Controller.Steps.Common; -using Questionable.Functions; using Questionable.Model; using Questionable.Model.Questing; using ValueType = FFXIVClientStructs.FFXIV.Component.GUI.ValueType; @@ -18,7 +16,7 @@ namespace Questionable.Controller.Steps.Leves; internal static class InitiateLeve { - internal sealed class Factory(IGameGui gameGui, ICondition condition) : ITaskFactory + internal sealed class Factory(ICondition condition) : ITaskFactory { public IEnumerable CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) { @@ -27,75 +25,85 @@ internal static class InitiateLeve yield return new SkipInitiateIfActive(quest.Id); yield return new OpenJournal(quest.Id); - yield return new Initiate(quest.Id, gameGui); - yield return new SelectDifficulty(gameGui); - yield return new WaitConditionTask(() => condition[ConditionFlag.BoundByDuty], "Wait(BoundByDuty)"); + yield return new Initiate(quest.Id); + yield return new SelectDifficulty(); + yield return new WaitCondition.Task(() => condition[ConditionFlag.BoundByDuty], "Wait(BoundByDuty)"); } } - internal sealed unsafe class SkipInitiateIfActive(ElementId elementId) : ITask + internal sealed record SkipInitiateIfActive(ElementId ElementId) : ITask { - public bool Start() => true; + public override string ToString() => $"CheckIfAlreadyActive({ElementId})"; + } - public ETaskResult Update() + internal sealed unsafe class SkipInitiateIfActiveExecutor : TaskExecutor + { + protected override bool Start() => true; + + public override ETaskResult Update() { var director = UIState.Instance()->DirectorTodo.Director; if (director != null && - director->EventHandlerInfo != null && - director->EventHandlerInfo->EventId.ContentId == EventHandlerType.GatheringLeveDirector && - director->ContentId == elementId.Value) + director->Info.EventId.ContentId == EventHandlerType.GatheringLeveDirector && + director->ContentId == Task.ElementId.Value) return ETaskResult.SkipRemainingTasksForStep; return ETaskResult.TaskComplete; } - - public override string ToString() => $"CheckIfAlreadyActive({elementId})"; } - internal sealed unsafe class OpenJournal(ElementId elementId) : ITask + internal sealed record OpenJournal(ElementId ElementId) : ITask + { + public uint QuestType => ElementId is LeveId ? 2u : 1u; + public override string ToString() => $"OpenJournal({ElementId})"; + } + + internal sealed unsafe class OpenJournalExecutor : TaskExecutor { - private readonly uint _questType = elementId is LeveId ? 2u : 1u; private DateTime _openedAt = DateTime.MinValue; - public bool Start() + protected override bool Start() { - AgentQuestJournal.Instance()->OpenForQuest(elementId.Value, _questType); + AgentQuestJournal.Instance()->OpenForQuest(Task.ElementId.Value, Task.QuestType); _openedAt = DateTime.Now; return true; } - public ETaskResult Update() + public override ETaskResult Update() { AgentQuestJournal* agentQuestJournal = AgentQuestJournal.Instance(); if (agentQuestJournal->IsAgentActive() && - agentQuestJournal->SelectedQuestId == elementId.Value && - agentQuestJournal->SelectedQuestType == _questType) + agentQuestJournal->SelectedQuestId == Task.ElementId.Value && + agentQuestJournal->SelectedQuestType == Task.QuestType) return ETaskResult.TaskComplete; if (DateTime.Now > _openedAt.AddSeconds(3)) { - AgentQuestJournal.Instance()->OpenForQuest(elementId.Value, _questType); + AgentQuestJournal.Instance()->OpenForQuest(Task.ElementId.Value, Task.QuestType); _openedAt = DateTime.Now; } return ETaskResult.StillRunning; } - - public override string ToString() => $"OpenJournal({elementId})"; } - internal sealed unsafe class Initiate(ElementId elementId, IGameGui gameGui) : ITask + internal sealed record Initiate(ElementId ElementId) : ITask { - public bool Start() => true; + public override string ToString() => $"InitiateLeve({ElementId})"; + } - public ETaskResult Update() + internal sealed unsafe class InitiateExecutor(IGameGui gameGui) : TaskExecutor + { + protected override bool Start() => true; + + public override ETaskResult Update() { if (gameGui.TryGetAddonByName("JournalDetail", out AtkUnitBase* addonJournalDetail)) { var pickQuest = stackalloc AtkValue[] { new() { Type = ValueType.Int, Int = 4 }, - new() { Type = ValueType.UInt, Int = elementId.Value } + new() { Type = ValueType.UInt, Int = Task.ElementId.Value } }; addonJournalDetail->FireCallback(2, pickQuest); return ETaskResult.TaskComplete; @@ -103,21 +111,22 @@ internal static class InitiateLeve return ETaskResult.StillRunning; } - - public override string ToString() => $"InitiateLeve({elementId})"; } - internal sealed unsafe class SelectDifficulty(IGameGui gameGui) : ITask + internal sealed class SelectDifficulty : ITask { - public bool Start() => true; + public override string ToString() => "SelectLeveDifficulty"; + } - public ETaskResult Update() + internal sealed unsafe class SelectDifficultyExecutor(IGameGui gameGui) : TaskExecutor + { + protected override bool Start() => true; + + public override ETaskResult Update() { if (gameGui.TryGetAddonByName("GuildLeveDifficulty", out AtkUnitBase* addon)) { // atkvalues: 1 → default difficulty, 2 → min, 3 → max - - var pickDifficulty = stackalloc AtkValue[] { new() { Type = ValueType.Int, Int = 0 }, @@ -129,7 +138,5 @@ internal static class InitiateLeve return ETaskResult.StillRunning; } - - public override string ToString() => "SelectLeveDifficulty"; } } diff --git a/Questionable/Controller/Steps/Shared/AethernetShortcut.cs b/Questionable/Controller/Steps/Shared/AethernetShortcut.cs index 9297297e..a1a066f0 100644 --- a/Questionable/Controller/Steps/Shared/AethernetShortcut.cs +++ b/Questionable/Controller/Steps/Shared/AethernetShortcut.cs @@ -5,7 +5,6 @@ using System.Numerics; using Dalamud.Game.ClientState.Conditions; using Dalamud.Game.ClientState.Objects.Enums; using Dalamud.Plugin.Services; -using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Questionable.Controller.Steps.Common; using Questionable.Data; @@ -22,14 +21,9 @@ internal static class AethernetShortcut { internal sealed class Factory( MovementController movementController, - AetheryteFunctions aetheryteFunctions, - GameFunctions gameFunctions, - IClientState clientState, AetheryteData aetheryteData, TerritoryData territoryData, - LifestreamIpc lifestreamIpc, - ICondition condition, - ILoggerFactory loggerFactory) + IClientState clientState) : ITaskFactory { public IEnumerable CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) @@ -37,111 +31,139 @@ internal static class AethernetShortcut if (step.AethernetShortcut == null) yield break; - yield return new WaitConditionTask(() => movementController.IsNavmeshReady, + yield return new WaitCondition.Task(() => movementController.IsNavmeshReady, "Wait(navmesh ready)"); - yield return Use(step.AethernetShortcut.From, step.AethernetShortcut.To, - step.SkipConditions?.AethernetShortcutIf); - } + yield return new Task(step.AethernetShortcut.From, step.AethernetShortcut.To, + step.SkipConditions?.AethernetShortcutIf ?? new()); - public ITask Use(EAetheryteLocation from, EAetheryteLocation to, SkipAetheryteCondition? skipConditions = null) - { - return new UseAethernetShortcut(from, to, skipConditions ?? new(), - loggerFactory.CreateLogger(), aetheryteFunctions, gameFunctions, clientState, - aetheryteData, territoryData, lifestreamIpc, movementController, condition); + if (AetheryteShortcut.MoveAwayFromAetheryteExecutor.AppliesTo(step.AethernetShortcut.To)) + { + yield return new WaitCondition.Task( + () => clientState.TerritoryType == aetheryteData.TerritoryIds[step.AethernetShortcut.To], + $"Wait(territory: {territoryData.GetNameAndId(aetheryteData.TerritoryIds[step.AethernetShortcut.To])})"); + yield return new AetheryteShortcut.MoveAwayFromAetheryte(step.AethernetShortcut.To); + } } } + internal sealed record Task( + EAetheryteLocation From, + EAetheryteLocation To, + SkipAetheryteCondition SkipConditions) : ISkippableTask + { + public Task(EAetheryteLocation from, + EAetheryteLocation to) + : this(from, to, new()) + { + } + + public override string ToString() => $"UseAethernet({From} -> {To})"; + } + internal sealed class UseAethernetShortcut( - EAetheryteLocation from, - EAetheryteLocation to, - SkipAetheryteCondition skipConditions, ILogger logger, AetheryteFunctions aetheryteFunctions, GameFunctions gameFunctions, + QuestFunctions questFunctions, IClientState clientState, AetheryteData aetheryteData, TerritoryData territoryData, LifestreamIpc lifestreamIpc, MovementController movementController, - ICondition condition) : ISkippableTask + ICondition condition) : TaskExecutor { private bool _moving; private bool _teleported; private bool _triedMounting; private DateTime _continueAt = DateTime.MinValue; - public EAetheryteLocation From => from; - public EAetheryteLocation To => to; + public EAetheryteLocation From => Task.From; + public EAetheryteLocation To => Task.To; - public bool Start() + protected override bool Start() { - if (!skipConditions.Never) + if (!Task.SkipConditions.Never) { - if (skipConditions.InSameTerritory && clientState.TerritoryType == aetheryteData.TerritoryIds[to]) + if (Task.SkipConditions.InSameTerritory && + clientState.TerritoryType == aetheryteData.TerritoryIds[Task.To]) { logger.LogInformation("Skipping aethernet shortcut because the target is in the same territory"); return false; } - if (skipConditions.InTerritory.Contains(clientState.TerritoryType)) + if (Task.SkipConditions.InTerritory.Contains(clientState.TerritoryType)) { logger.LogInformation( "Skipping aethernet shortcut because the target is in the specified territory"); return false; } - if (skipConditions.AetheryteLocked != null && - !aetheryteFunctions.IsAetheryteUnlocked(skipConditions.AetheryteLocked.Value)) + if (Task.SkipConditions.QuestsCompleted.Count > 0 && + Task.SkipConditions.QuestsCompleted.All(questFunctions.IsQuestComplete)) + { + logger.LogInformation("Skipping aethernet shortcut, all prequisite quests are complete"); + return true; + } + + if (Task.SkipConditions.QuestsAccepted.Count > 0 && + Task.SkipConditions.QuestsAccepted.All(questFunctions.IsQuestAccepted)) + { + logger.LogInformation("Skipping aethernet shortcut, all prequisite quests are accepted"); + return true; + } + + if (Task.SkipConditions.AetheryteLocked != null && + !aetheryteFunctions.IsAetheryteUnlocked(Task.SkipConditions.AetheryteLocked.Value)) { logger.LogInformation("Skipping aethernet shortcut because the target aetheryte is locked"); return false; } - if (skipConditions.AetheryteUnlocked != null && - aetheryteFunctions.IsAetheryteUnlocked(skipConditions.AetheryteUnlocked.Value)) + if (Task.SkipConditions.AetheryteUnlocked != null && + aetheryteFunctions.IsAetheryteUnlocked(Task.SkipConditions.AetheryteUnlocked.Value)) { logger.LogInformation("Skipping aethernet shortcut because the target aetheryte is unlocked"); return false; } } - if (aetheryteFunctions.IsAetheryteUnlocked(from) && - aetheryteFunctions.IsAetheryteUnlocked(to)) + if (aetheryteFunctions.IsAetheryteUnlocked(Task.From) && + aetheryteFunctions.IsAetheryteUnlocked(Task.To)) { ushort territoryType = clientState.TerritoryType; Vector3 playerPosition = clientState.LocalPlayer!.Position; // closer to the source - if (aetheryteData.CalculateDistance(playerPosition, territoryType, from) < - aetheryteData.CalculateDistance(playerPosition, territoryType, to)) + if (aetheryteData.CalculateDistance(playerPosition, territoryType, Task.From) < + aetheryteData.CalculateDistance(playerPosition, territoryType, Task.To)) { - if (aetheryteData.CalculateDistance(playerPosition, territoryType, from) < - (from.IsFirmamentAetheryte() ? 11f : 4f)) + if (aetheryteData.CalculateDistance(playerPosition, territoryType, Task.From) < + (Task.From.IsFirmamentAetheryte() ? 11f : 4f)) { DoTeleport(); return true; } - else if (from == EAetheryteLocation.SolutionNine) + else if (Task.From == EAetheryteLocation.SolutionNine) { logger.LogInformation("Moving to S9 aetheryte"); List nearbyPoints = [ - new(7.225532f, 8.467899f, -7.1670876f), - new(7.177844f, 8.467899f, 7.2216787f), - new(-7.0762224f, 8.467898f, 7.1924725f), - new(-7.1289554f, 8.467898f, -7.0594683f) + new(0, 8.442986f, 9), + new(9, 8.442986f, 0), + new(-9, 8.442986f, 0), + new(0, 8.442986f, -9), ]; - Vector3 closestPoint = nearbyPoints.MinBy(x => (playerPosition - x).Length()); + Vector3 closestPoint = nearbyPoints.MinBy(x => Vector3.Distance(playerPosition, x)); _moving = true; - movementController.NavigateTo(EMovementType.Quest, (uint)from, closestPoint, false, true, + movementController.NavigateTo(EMovementType.Quest, (uint)Task.From, closestPoint, false, true, 0.25f); return true; } else { if (territoryData.CanUseMount(territoryType) && - aetheryteData.CalculateDistance(playerPosition, territoryType, from) > 30 && + aetheryteData.CalculateDistance(playerPosition, territoryType, Task.From) > 30 && !gameFunctions.HasStatusPreventingMount()) { _triedMounting = gameFunctions.Mount(); @@ -160,7 +182,7 @@ internal static class AethernetShortcut else logger.LogWarning( "Aethernet shortcut not unlocked (from: {FromAetheryte}, to: {ToAetheryte}), walking manually", - from, to); + Task.From, Task.To); return false; } @@ -169,31 +191,34 @@ internal static class AethernetShortcut { logger.LogInformation("Moving to aethernet shortcut"); _moving = true; - movementController.NavigateTo(EMovementType.Quest, (uint)from, aetheryteData.Locations[from], + float distance = Task.From switch + { + _ when Task.From.IsFirmamentAetheryte() => 4.4f, + EAetheryteLocation.UldahChamberOfRule => 5f, + _ when AetheryteConverter.IsLargeAetheryte(Task.From) => 10.9f, + _ => 6.9f, + }; + movementController.NavigateTo(EMovementType.Quest, (uint)Task.From, aetheryteData.Locations[Task.From], false, true, - from.IsFirmamentAetheryte() - ? 4.4f - : AetheryteConverter.IsLargeAetheryte(from) - ? 10.9f - : 6.9f); + distance); } private void DoTeleport() { - if (from.IsFirmamentAetheryte()) + if (Task.From.IsFirmamentAetheryte()) { logger.LogInformation("Using manual teleport interaction"); - _teleported = gameFunctions.InteractWith((uint)from, ObjectKind.EventObj); + _teleported = gameFunctions.InteractWith((uint)Task.From, ObjectKind.EventObj); } else { - logger.LogInformation("Using lifestream to teleport to {Destination}", to); - lifestreamIpc.Teleport(to); + logger.LogInformation("Using lifestream to teleport to {Destination}", Task.To); + lifestreamIpc.Teleport(Task.To); _teleported = true; } } - public ETaskResult Update() + public override ETaskResult Update() { if (DateTime.Now < _continueAt) return ETaskResult.StillRunning; @@ -228,29 +253,27 @@ internal static class AethernetShortcut return ETaskResult.StillRunning; } - if (aetheryteData.IsAirshipLanding(to)) + if (aetheryteData.IsAirshipLanding(Task.To)) { if (aetheryteData.CalculateAirshipLandingDistance(clientState.LocalPlayer?.Position ?? Vector3.Zero, - clientState.TerritoryType, to) > 5) + clientState.TerritoryType, Task.To) > 5) return ETaskResult.StillRunning; } - else if (aetheryteData.IsCityAetheryte(to)) + else if (aetheryteData.IsCityAetheryte(Task.To)) { if (aetheryteData.CalculateDistance(clientState.LocalPlayer?.Position ?? Vector3.Zero, - clientState.TerritoryType, to) > 20) + clientState.TerritoryType, Task.To) > 20) return ETaskResult.StillRunning; } else { // some overworld location (e.g. 'Tesselation (Lakeland)' would end up here - if (clientState.TerritoryType != aetheryteData.TerritoryIds[to]) + if (clientState.TerritoryType != aetheryteData.TerritoryIds[Task.To]) return ETaskResult.StillRunning; } return ETaskResult.TaskComplete; } - - public override string ToString() => $"UseAethernet({from} -> {to})"; } } diff --git a/Questionable/Controller/Steps/Shared/AetheryteShortcut.cs b/Questionable/Controller/Steps/Shared/AetheryteShortcut.cs index 2d72afd1..7f2a8fd0 100644 --- a/Questionable/Controller/Steps/Shared/AetheryteShortcut.cs +++ b/Questionable/Controller/Steps/Shared/AetheryteShortcut.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; +using System.IO; +using System.Linq; using System.Numerics; using Dalamud.Plugin.Services; -using FFXIVClientStructs.FFXIV.Application.Network.WorkDefinitions; -using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Questionable.Controller.Steps.Common; using Questionable.Controller.Utils; @@ -17,52 +17,53 @@ namespace Questionable.Controller.Steps.Shared; internal static class AetheryteShortcut { - internal sealed class Factory( - AetheryteData aetheryteData, - AetheryteFunctions aetheryteFunctions, - QuestFunctions questFunctions, - IClientState clientState, - IChatGui chatGui, - ILoggerFactory loggerFactory) : ITaskFactory + internal sealed class Factory(AetheryteData aetheryteData, TerritoryData territoryData, IClientState clientState) + : ITaskFactory { public IEnumerable CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) { if (step.AetheryteShortcut == null) yield break; - yield return Use(step, quest.Id, step.AetheryteShortcut.Value, + yield return new Task(step, quest.Id, step.AetheryteShortcut.Value, aetheryteData.TerritoryIds[step.AetheryteShortcut.Value]); yield return new WaitAtEnd.WaitDelay(TimeSpan.FromSeconds(0.5)); - } - public ITask Use(QuestStep? step, ElementId? elementId, EAetheryteLocation targetAetheryte, - ushort expectedTerritoryId) - { - return new UseAetheryteShortcut(step, elementId, targetAetheryte, expectedTerritoryId, - loggerFactory.CreateLogger(), aetheryteFunctions, questFunctions, clientState, - chatGui, aetheryteData); + if (MoveAwayFromAetheryteExecutor.AppliesTo(step.AetheryteShortcut.Value) && + step.AethernetShortcut?.From != step.AetheryteShortcut.Value) + { + yield return new WaitCondition.Task( + () => clientState.TerritoryType == aetheryteData.TerritoryIds[step.AetheryteShortcut.Value], + $"Wait(territory: {territoryData.GetNameAndId(aetheryteData.TerritoryIds[step.AetheryteShortcut.Value])})"); + yield return new MoveAwayFromAetheryte(step.AetheryteShortcut.Value); + } } } - /// If using an aethernet shortcut after, the aetheryte's territory-id and the step's territory-id can differ, we always use the aetheryte's territory-id. - private sealed class UseAetheryteShortcut( - QuestStep? step, - ElementId? elementId, - EAetheryteLocation targetAetheryte, - ushort expectedTerritoryId, + /// If using an aethernet shortcut after, the aetheryte's territory-id and the step's territory-id can differ, we always use the aetheryte's territory-id. + internal sealed record Task( + QuestStep? Step, + ElementId? ElementId, + EAetheryteLocation TargetAetheryte, + ushort ExpectedTerritoryId) : ISkippableTask + { + public override string ToString() => $"UseAetheryte({TargetAetheryte})"; + } + + internal sealed class UseAetheryteShortcut( ILogger logger, AetheryteFunctions aetheryteFunctions, QuestFunctions questFunctions, IClientState clientState, IChatGui chatGui, - AetheryteData aetheryteData) : ISkippableTask + AetheryteData aetheryteData) : TaskExecutor { private bool _teleported; private DateTime _continueAt; - public bool Start() => !ShouldSkipTeleport(); + protected override bool Start() => !ShouldSkipTeleport(); - public ETaskResult Update() + public override ETaskResult Update() { if (DateTime.Now < _continueAt) return ETaskResult.StillRunning; @@ -73,7 +74,7 @@ internal static class AetheryteShortcut return ETaskResult.StillRunning; } - if (clientState.TerritoryType == expectedTerritoryId) + if (clientState.TerritoryType == Task.ExpectedTerritoryId) return ETaskResult.TaskComplete; return ETaskResult.StillRunning; @@ -82,9 +83,9 @@ internal static class AetheryteShortcut private bool ShouldSkipTeleport() { ushort territoryType = clientState.TerritoryType; - if (step != null) + if (Task.Step != null) { - var skipConditions = step.SkipConditions?.AetheryteShortcutIf ?? new(); + var skipConditions = Task.Step.SkipConditions?.AetheryteShortcutIf ?? new(); if (skipConditions is { Never: false }) { if (skipConditions.InTerritory.Contains(territoryType)) @@ -93,6 +94,20 @@ internal static class AetheryteShortcut return true; } + if (skipConditions.QuestsCompleted.Count > 0 && + skipConditions.QuestsCompleted.All(questFunctions.IsQuestComplete)) + { + logger.LogInformation("Skipping aetheryte, all prequisite quests are complete"); + return true; + } + + if (skipConditions.QuestsAccepted.Count > 0 && + skipConditions.QuestsAccepted.All(questFunctions.IsQuestAccepted)) + { + logger.LogInformation("Skipping aetheryte, all prequisite quests are accepted"); + return true; + } + if (skipConditions.AetheryteLocked != null && !aetheryteFunctions.IsAetheryteUnlocked(skipConditions.AetheryteLocked.Value)) { @@ -107,12 +122,12 @@ internal static class AetheryteShortcut return true; } - if (elementId != null) + if (Task.ElementId != null) { - QuestProgressInfo? questWork = questFunctions.GetQuestProgressInfo(elementId); + QuestProgressInfo? questWork = questFunctions.GetQuestProgressInfo(Task.ElementId); if (skipConditions.RequiredQuestVariablesNotMet && questWork != null && - !QuestWorkUtils.MatchesRequiredQuestWorkConfig(step.RequiredQuestVariables, questWork, + !QuestWorkUtils.MatchesRequiredQuestWorkConfig(Task.Step.RequiredQuestVariables, questWork, logger)) { logger.LogInformation("Skipping aetheryte teleport, as required variables do not match"); @@ -122,7 +137,7 @@ internal static class AetheryteShortcut if (skipConditions.NearPosition is { } nearPosition && - clientState.TerritoryType == step.TerritoryId) + clientState.TerritoryType == nearPosition.TerritoryId) { if (Vector3.Distance(nearPosition.Position, clientState.LocalPlayer!.Position) <= nearPosition.MaximumDistance) @@ -133,7 +148,7 @@ internal static class AetheryteShortcut } } - if (expectedTerritoryId == territoryType) + if (Task.ExpectedTerritoryId == territoryType) { if (!skipConditions.Never) { @@ -144,17 +159,19 @@ internal static class AetheryteShortcut } Vector3 pos = clientState.LocalPlayer!.Position; - if (step.Position != null && - (pos - step.Position.Value).Length() < step.CalculateActualStopDistance()) + if (Task.Step.Position != null && + (pos - Task.Step.Position.Value).Length() < Task.Step.CalculateActualStopDistance()) { logger.LogInformation("Skipping aetheryte teleport, we're near the target"); return true; } - if (aetheryteData.CalculateDistance(pos, territoryType, targetAetheryte) < 20 || - (step.AethernetShortcut != null && - (aetheryteData.CalculateDistance(pos, territoryType, step.AethernetShortcut.From) < 20 || - aetheryteData.CalculateDistance(pos, territoryType, step.AethernetShortcut.To) < 20))) + if (aetheryteData.CalculateDistance(pos, territoryType, Task.TargetAetheryte) < 20 || + (Task.Step.AethernetShortcut != null && + (aetheryteData.CalculateDistance(pos, territoryType, Task.Step.AethernetShortcut.From) < + 20 || + aetheryteData.CalculateDistance(pos, territoryType, Task.Step.AethernetShortcut.To) < + 20))) { logger.LogInformation("Skipping aetheryte teleport"); return true; @@ -168,7 +185,7 @@ internal static class AetheryteShortcut private bool DoTeleport() { - if (!aetheryteFunctions.CanTeleport(targetAetheryte)) + if (!aetheryteFunctions.CanTeleport(Task.TargetAetheryte)) { if (!aetheryteFunctions.IsTeleportUnlocked()) throw new TaskException("Teleport is not unlocked, attune to any aetheryte first."); @@ -180,12 +197,16 @@ internal static class AetheryteShortcut _continueAt = DateTime.Now.AddSeconds(8); - if (!aetheryteFunctions.IsAetheryteUnlocked(targetAetheryte)) + if (!aetheryteFunctions.IsAetheryteUnlocked(Task.TargetAetheryte)) { - chatGui.PrintError($"[Questionable] Aetheryte {targetAetheryte} is not unlocked."); + chatGui.PrintError($"[Questionable] Aetheryte {Task.TargetAetheryte} is not unlocked."); throw new TaskException("Aetheryte is not unlocked"); } - else if (aetheryteFunctions.TeleportAetheryte(targetAetheryte)) + + ProgressContext = + InteractionProgressContext.FromActionUseOrDefault(() => + aetheryteFunctions.TeleportAetheryte(Task.TargetAetheryte)); + if (ProgressContext != null) { logger.LogInformation("Travelling via aetheryte..."); return true; @@ -196,7 +217,48 @@ internal static class AetheryteShortcut throw new TaskException("Unable to teleport to aetheryte"); } } + } - public override string ToString() => $"UseAetheryte({targetAetheryte})"; + internal sealed record MoveAwayFromAetheryte(EAetheryteLocation TargetAetheryte) : ITask + { + public override string ToString() => $"MoveAway({TargetAetheryte})"; + } + + internal sealed class MoveAwayFromAetheryteExecutor( + MoveTo.MoveExecutor moveExecutor, + AetheryteData aetheryteData, + IClientState clientState) : TaskExecutor + { + private static readonly Dictionary> AetherytesToMoveFrom = new() + { + { + EAetheryteLocation.SolutionNine, + [ + new(0f, 8.8f, 15.5f), + new(0f, 8.8f, -15.5f), + new(15.5f, 8.8f, 0f), + new(-15.5f, 8.8f, 0f) + ] + } + }; + + public static bool AppliesTo(EAetheryteLocation location) => AetherytesToMoveFrom.ContainsKey(location); + + protected override bool Start() + { + // only relevant if we're actually near the s9 aetheryte at the end + Vector3 playerPosition = clientState.LocalPlayer!.Position; + if (aetheryteData.CalculateDistance(playerPosition, clientState.TerritoryType, Task.TargetAetheryte) >= 20) + return false; + + Vector3 closestPoint = AetherytesToMoveFrom[Task.TargetAetheryte] + .MinBy(x => Vector3.Distance(x, playerPosition)); + MoveTo.MoveTask task = new MoveTo.MoveTask(aetheryteData.TerritoryIds[Task.TargetAetheryte], + closestPoint, Mount: false, StopDistance: 0.25f, DisableNavmesh: true, + InteractionType: EInteractionType.None, RestartNavigation: false); + return moveExecutor.Start(task); + } + + public override ETaskResult Update() => moveExecutor.Update(); } } diff --git a/Questionable/Controller/Steps/Shared/Craft.cs b/Questionable/Controller/Steps/Shared/Craft.cs index 5d09f37c..ad474fe2 100644 --- a/Questionable/Controller/Steps/Shared/Craft.cs +++ b/Questionable/Controller/Steps/Shared/Craft.cs @@ -17,12 +17,7 @@ namespace Questionable.Controller.Steps.Shared; internal static class Craft { - internal sealed class Factory( - IDataManager dataManager, - IClientState clientState, - ArtisanIpc artisanIpc, - Mount.Factory mountFactory, - ILoggerFactory loggerFactory) : ITaskFactory + internal sealed class Factory : ITaskFactory { public IEnumerable CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) { @@ -33,34 +28,36 @@ internal static class Craft ArgumentNullException.ThrowIfNull(step.ItemCount); return [ - mountFactory.Unmount(), - Craft(step.ItemId.Value, step.ItemCount.Value) + new Mount.UnmountTask(), + new CraftTask(step.ItemId.Value, step.ItemCount.Value) ]; } - - public ITask Craft(uint itemId, int itemCount) => - new DoCraft(itemId, itemCount, dataManager, clientState, artisanIpc, loggerFactory.CreateLogger()); } - private sealed class DoCraft( - uint itemId, - int itemCount, + internal sealed record CraftTask( + uint ItemId, + int ItemCount) : ITask + { + public override string ToString() => $"Craft {ItemCount}x {ItemId} (with Artisan)"; + } + + internal sealed class DoCraft( IDataManager dataManager, IClientState clientState, ArtisanIpc artisanIpc, - ILogger logger) : ITask + ILogger logger) : TaskExecutor { - public bool Start() + protected override bool Start() { if (HasRequestedItems()) { - logger.LogInformation("Already own {ItemCount}x {ItemId}", itemCount, itemId); + logger.LogInformation("Already own {ItemCount}x {ItemId}", Task.ItemCount, Task.ItemId); return false; } - RecipeLookup? recipeLookup = dataManager.GetExcelSheet()!.GetRow(itemId); + RecipeLookup? recipeLookup = dataManager.GetExcelSheet()!.GetRow(Task.ItemId); if (recipeLookup == null) - throw new TaskException($"Item {itemId} is not craftable"); + throw new TaskException($"Item {Task.ItemId} is not craftable"); uint recipeId = (EClassJob)clientState.LocalPlayer!.ClassJob.Id switch { @@ -92,19 +89,19 @@ internal static class Craft } if (recipeId == 0) - throw new TaskException($"Unable to determine recipe for item {itemId}"); + throw new TaskException($"Unable to determine recipe for item {Task.ItemId}"); - int remainingItemCount = itemCount - GetOwnedItemCount(); + int remainingItemCount = Task.ItemCount - GetOwnedItemCount(); logger.LogInformation( "Starting craft for item {ItemId} with recipe {RecipeId} for {RemainingItemCount} items", - itemId, recipeId, remainingItemCount); + Task.ItemId, recipeId, remainingItemCount); if (!artisanIpc.CraftItem((ushort)recipeId, remainingItemCount)) throw new TaskException($"Failed to start Artisan craft for recipe {recipeId}"); return true; } - public unsafe ETaskResult Update() + public override unsafe ETaskResult Update() { if (HasRequestedItems() && !artisanIpc.IsCrafting()) { @@ -128,15 +125,13 @@ internal static class Craft return ETaskResult.StillRunning; } - private bool HasRequestedItems() => GetOwnedItemCount() >= itemCount; + private bool HasRequestedItems() => GetOwnedItemCount() >= Task.ItemCount; private unsafe int GetOwnedItemCount() { InventoryManager* inventoryManager = InventoryManager.Instance(); - return inventoryManager->GetInventoryItemCount(itemId, isHq: false, checkEquipped: false) - + inventoryManager->GetInventoryItemCount(itemId, isHq: true, checkEquipped: false); + return inventoryManager->GetInventoryItemCount(Task.ItemId, isHq: false, checkEquipped: false) + + inventoryManager->GetInventoryItemCount(Task.ItemId, isHq: true, checkEquipped: false); } - - public override string ToString() => $"Craft {itemCount}x {itemId} (with Artisan)"; } } diff --git a/Questionable/Controller/Steps/Shared/GatheringRequiredItems.cs b/Questionable/Controller/Steps/Shared/Gather.cs similarity index 66% rename from Questionable/Controller/Steps/Shared/GatheringRequiredItems.cs rename to Questionable/Controller/Steps/Shared/Gather.cs index 6e821e6a..ee5c50a0 100644 --- a/Questionable/Controller/Steps/Shared/GatheringRequiredItems.cs +++ b/Questionable/Controller/Steps/Shared/Gather.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using Dalamud.Game.Text; +using Dalamud.Game.Text.SeStringHandling; using Dalamud.Plugin.Services; using FFXIVClientStructs.FFXIV.Application.Network.WorkDefinitions; using FFXIVClientStructs.FFXIV.Client.Game; @@ -16,12 +17,11 @@ using Questionable.Model.Questing; namespace Questionable.Controller.Steps.Shared; -internal static class GatheringRequiredItems +internal static class Gather { internal sealed class Factory( IServiceProvider serviceProvider, MovementController movementController, - GatheringController gatheringController, GatheringPointRegistry gatheringPointRegistry, IClientState clientState, GatheringData gatheringData, @@ -30,30 +30,33 @@ internal static class GatheringRequiredItems { public IEnumerable CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) { - foreach (var requiredGatheredItems in step.RequiredGatheredItems) + if (step.InteractionType != EInteractionType.Gather) + yield break; + + foreach (var itemToGather in step.ItemsToGather) { EClassJob currentClassJob = (EClassJob)clientState.LocalPlayer!.ClassJob.Id; EClassJob classJob = currentClassJob; - if (requiredGatheredItems.QuestAcceptedAsClass != null) + if (itemToGather.QuestAcceptedAsClass != null) { - classJob = (EClassJob)requiredGatheredItems.QuestAcceptedAsClass.Value; + classJob = (EClassJob)itemToGather.QuestAcceptedAsClass.Value; if (!IsClassJobQuestWasAcceptedWith(quest.Id, classJob)) continue; } - if (!gatheringData.TryGetGatheringPointId(requiredGatheredItems.ItemId, classJob, + if (!gatheringData.TryGetGatheringPointId(itemToGather.ItemId, classJob, out GatheringPointId? gatheringPointId)) - throw new TaskException($"No gathering point found for item {requiredGatheredItems.ItemId}"); + throw new TaskException($"No gathering point found for item {itemToGather.ItemId}"); if (!gatheringPointRegistry.TryGetGatheringPoint(gatheringPointId, out GatheringRoot? gatheringRoot)) throw new TaskException($"No path found for gathering point {gatheringPointId}"); if (classJob != currentClassJob) { - yield return new SwitchClassJob(classJob, clientState); + yield return new SwitchClassJob.Task(classJob); } - if (HasRequiredItems(requiredGatheredItems)) + if (HasRequiredItems(itemToGather)) continue; using (var _ = logger.BeginScope("Gathering(inner)")) @@ -68,20 +71,21 @@ internal static class GatheringRequiredItems foreach (var task in serviceProvider.GetRequiredService() .CreateTasks(quest, gatheringSequence, gatheringStep)) if (task is WaitAtEnd.NextStep) - yield return CreateSkipMarkerTask(); + yield return new SkipMarker(); else yield return task; } } ushort territoryId = gatheringRoot.Steps.Last().TerritoryId; - yield return new WaitConditionTask(() => clientState.TerritoryType == territoryId, + yield return new WaitCondition.Task(() => clientState.TerritoryType == territoryId, $"Wait(territory: {territoryData.GetNameAndId(territoryId)})"); - yield return new WaitConditionTask(() => movementController.IsNavmeshReady, + yield return new WaitCondition.Task(() => movementController.IsNavmeshReady, "Wait(navmesh ready)"); - yield return CreateStartGatheringTask(gatheringPointId, requiredGatheredItems); + yield return new GatheringTask(gatheringPointId, itemToGather); + yield return new WaitAtEnd.WaitDelay(); } } @@ -97,46 +101,20 @@ internal static class GatheringRequiredItems return true; } - private unsafe bool HasRequiredItems(GatheredItem requiredGatheredItems) + private unsafe bool HasRequiredItems(GatheredItem itemToGather) { InventoryManager* inventoryManager = InventoryManager.Instance(); return inventoryManager != null && - inventoryManager->GetInventoryItemCount(requiredGatheredItems.ItemId, - minCollectability: (short)requiredGatheredItems.Collectability) >= - requiredGatheredItems.ItemCount; - } - - private StartGathering CreateStartGatheringTask(GatheringPointId gatheringPointId, GatheredItem gatheredItem) - { - return new StartGathering(gatheringPointId, gatheredItem, gatheringController); - } - - private static SkipMarker CreateSkipMarkerTask() - { - return new SkipMarker(); + inventoryManager->GetInventoryItemCount(itemToGather.ItemId, + minCollectability: (short)itemToGather.Collectability) >= + itemToGather.ItemCount; } } - private sealed class StartGathering( + internal sealed record GatheringTask( GatheringPointId gatheringPointId, - GatheredItem gatheredItem, - GatheringController gatheringController) : ITask + GatheredItem gatheredItem) : ITask { - public bool Start() - { - return gatheringController.Start(new GatheringController.GatheringRequest(gatheringPointId, - gatheredItem.ItemId, gatheredItem.AlternativeItemId, gatheredItem.ItemCount, - gatheredItem.Collectability)); - } - - public ETaskResult Update() - { - if (gatheringController.Update() == GatheringController.EStatus.Complete) - return ETaskResult.TaskComplete; - - return ETaskResult.StillRunning; - } - public override string ToString() { if (gatheredItem.Collectability == 0) @@ -147,12 +125,43 @@ internal static class GatheringRequiredItems } } + internal sealed class StartGathering(GatheringController gatheringController) : TaskExecutor, + IToastAware + { + protected override bool Start() + { + return gatheringController.Start(new GatheringController.GatheringRequest(Task.gatheringPointId, + Task.gatheredItem.ItemId, Task.gatheredItem.AlternativeItemId, Task.gatheredItem.ItemCount, + Task.gatheredItem.Collectability)); + } + + public override ETaskResult Update() + { + if (gatheringController.Update() == GatheringController.EStatus.Complete) + return ETaskResult.TaskComplete; + + return ETaskResult.StillRunning; + } + + public bool OnErrorToast(SeString message) + { + bool isHandled = false; + gatheringController.OnErrorToast(ref message, ref isHandled); + return isHandled; + } + } + /// /// A task that does nothing, but if we're skipping a step, this will be the task next in queue to be executed (instead of progressing to the next step) if gathering. /// internal sealed class SkipMarker : ITask { - public bool Start() => true; - public ETaskResult Update() => ETaskResult.TaskComplete; + public override string ToString() => "Gather/SkipMarker"; + } + + internal sealed class DoSkip : TaskExecutor + { + protected override bool Start() => true; + public override ETaskResult Update() => ETaskResult.TaskComplete; } } diff --git a/Questionable/Controller/Steps/Shared/MoveTo.cs b/Questionable/Controller/Steps/Shared/MoveTo.cs index a24fb2f0..bd62ea13 100644 --- a/Questionable/Controller/Steps/Shared/MoveTo.cs +++ b/Questionable/Controller/Steps/Shared/MoveTo.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Diagnostics.CodeAnalysis; using System.Globalization; using System.Numerics; using Dalamud.Game.ClientState.Conditions; @@ -10,7 +11,6 @@ using FFXIVClientStructs.FFXIV.Client.Game; using FFXIVClientStructs.FFXIV.Client.Game.Character; using LLib; using Lumina.Excel.GeneratedSheets; -using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Questionable.Controller.Steps.Common; using Questionable.Data; @@ -27,60 +27,34 @@ internal static class MoveTo { internal sealed class Factory( MovementController movementController, - GameFunctions gameFunctions, - ICondition condition, - IDataManager dataManager, IClientState clientState, AetheryteData aetheryteData, TerritoryData territoryData, - ILoggerFactory loggerFactory, - Mount.Factory mountFactory, ILogger logger) : ITaskFactory { public IEnumerable CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) { if (step.Position != null) { - return CreateMountTasks(quest.Id, step, step.Position.Value); + return CreateMoveTasks(step, step.Position.Value); } else if (step is { DataId: not null, StopDistance: not null }) { - return [ExpectToBeNearDataId(step.DataId.Value, step.StopDistance.Value)]; + return [new WaitForNearDataId(step.DataId.Value, step.StopDistance.Value)]; } else if (step is { InteractionType: EInteractionType.AttuneAetheryte, Aetheryte: not null }) { - return CreateMountTasks(quest.Id, step, aetheryteData.Locations[step.Aetheryte.Value]); + return CreateMoveTasks(step, aetheryteData.Locations[step.Aetheryte.Value]); } else if (step is { InteractionType: EInteractionType.AttuneAethernetShard, AethernetShard: not null }) { - return CreateMountTasks(quest.Id, step, aetheryteData.Locations[step.AethernetShard.Value]); + return CreateMoveTasks(step, aetheryteData.Locations[step.AethernetShard.Value]); } return []; } - public ITask Move(QuestStep step, Vector3 destination) - { - return Move(new MoveParams(step, destination)); - } - - public ITask Move(MoveParams moveParams) - { - return new MoveInternal(moveParams, movementController, gameFunctions, - loggerFactory.CreateLogger(), condition, dataManager); - } - - public ITask Land() - { - return new LandTask(clientState, condition, loggerFactory.CreateLogger()); - } - - public ITask ExpectToBeNearDataId(uint dataId, float stopDistance) - { - return new WaitForNearDataId(dataId, stopDistance, gameFunctions, clientState); - } - - public IEnumerable CreateMountTasks(ElementId questId, QuestStep step, Vector3 destination) + private IEnumerable CreateMoveTasks(QuestStep step, Vector3 destination) { if (step.InteractionType == EInteractionType.Jump && step.JumpDestination != null && (clientState.LocalPlayer!.Position - step.JumpDestination.Position).Length() <= @@ -90,133 +64,161 @@ internal static class MoveTo yield break; } - yield return new WaitConditionTask(() => clientState.TerritoryType == step.TerritoryId, + yield return new WaitCondition.Task(() => clientState.TerritoryType == step.TerritoryId, $"Wait(territory: {territoryData.GetNameAndId(step.TerritoryId)})"); if (!step.DisableNavmesh) - yield return new WaitConditionTask(() => movementController.IsNavmeshReady, + { + yield return new WaitCondition.Task(() => movementController.IsNavmeshReady, "Wait(navmesh ready)"); - - float stopDistance = step.CalculateActualStopDistance(); - Vector3? position = clientState.LocalPlayer?.Position; - float actualDistance = position == null ? float.MaxValue : Vector3.Distance(position.Value, destination); - - // if we teleport to a different zone, assume we always need to move; this is primarily relevant for cases - // where you're e.g. in Lakeland, and the step navigates via Crystarium → Tesselation back into the same - // zone. - // - // Side effects of this check being broken include: - // - mounting when near the target npc (if you spawn close enough for the next step) - // - trying to fly when near the target npc (if close enough where no movement is required) - if (step.AetheryteShortcut != null && - aetheryteData.TerritoryIds[step.AetheryteShortcut.Value] != step.TerritoryId) - { - logger.LogDebug("Aetheryte: Changing distance to max, previous distance: {Distance}", actualDistance); - actualDistance = float.MaxValue; } - if (step.Mount == true) - yield return mountFactory.Mount(step.TerritoryId, Mount.EMountIf.Always); - else if (step.Mount == false) - yield return mountFactory.Unmount(); + yield return new MoveTask(step, destination); - if (!step.DisableNavmesh) - { - if (step.Mount == null) - { - Mount.EMountIf mountIf = - actualDistance > stopDistance && step.Fly == true && - gameFunctions.IsFlyingUnlocked(step.TerritoryId) - ? Mount.EMountIf.Always - : Mount.EMountIf.AwayFromPosition; - yield return mountFactory.Mount(step.TerritoryId, mountIf, destination); - } - - if (actualDistance > stopDistance) - { - yield return Move(step, destination); - } - else - logger.LogInformation("Skipping move task, distance: {ActualDistance} < {StopDistance}", - actualDistance, stopDistance); - } - else - { - // navmesh won't move close enough - if (actualDistance > stopDistance) - { - yield return Move(step, destination); - } - else - logger.LogInformation("Skipping move task, distance: {ActualDistance} < {StopDistance}", - actualDistance, stopDistance); - } - - if (step.Fly == true && step.Land == true) - yield return Land(); + if (step is { Fly: true, Land: true }) + yield return new LandTask(); } } - private sealed class MoveInternal : ITask, IToastAware + internal sealed class MoveExecutor : TaskExecutor, IToastAware { private readonly string _cannotExecuteAtThisTime; private readonly MovementController _movementController; - private readonly ILogger _logger; - private readonly ICondition _condition; + private readonly GameFunctions _gameFunctions; + private readonly ILogger _logger; + private readonly IClientState _clientState; + private readonly Mount.MountExecutor _mountExecutor; + private readonly Mount.UnmountExecutor _unmountExecutor; - private readonly Action _startAction; - private readonly Vector3 _destination; + private Action? _startAction; + private Vector3 _destination; + private bool _canRestart; + private ITaskExecutor? _nestedExecutor; - public MoveInternal(MoveParams moveParams, + public MoveExecutor( MovementController movementController, GameFunctions gameFunctions, - ILogger logger, - ICondition condition, - IDataManager dataManager) + ILogger logger, + IClientState clientState, + IDataManager dataManager, + Mount.MountExecutor mountExecutor, + Mount.UnmountExecutor unmountExecutor) { _movementController = movementController; + _gameFunctions = gameFunctions; _logger = logger; - _condition = condition; + _clientState = clientState; + _mountExecutor = mountExecutor; + _unmountExecutor = unmountExecutor; _cannotExecuteAtThisTime = dataManager.GetString(579, x => x.Text)!; + } - _destination = moveParams.Destination; - - if (!gameFunctions.IsFlyingUnlocked(moveParams.TerritoryId)) + private void PrepareMovementIfNeeded() + { + if (!_gameFunctions.IsFlyingUnlocked(Task.TerritoryId)) { - moveParams = moveParams with { Fly = false, Land = false }; + Task = Task with { Fly = false, Land = false }; } - if (!moveParams.DisableNavMesh) + if (!Task.DisableNavmesh) { _startAction = () => - _movementController.NavigateTo(EMovementType.Quest, moveParams.DataId, _destination, - fly: moveParams.Fly, - sprint: moveParams.Sprint, - stopDistance: moveParams.StopDistance, - ignoreDistanceToObject: moveParams.IgnoreDistanceToObject, - land: moveParams.Land); + _movementController.NavigateTo(EMovementType.Quest, Task.DataId, _destination, + fly: Task.Fly, + sprint: Task.Sprint, + stopDistance: Task.StopDistance, + ignoreDistanceToObject: Task.IgnoreDistanceToObject, + land: Task.Land); } else { _startAction = () => - _movementController.NavigateTo(EMovementType.Quest, moveParams.DataId, [_destination], - fly: moveParams.Fly, - sprint: moveParams.Sprint, - stopDistance: moveParams.StopDistance, - ignoreDistanceToObject: moveParams.IgnoreDistanceToObject, - land: moveParams.Land); + _movementController.NavigateTo(EMovementType.Quest, Task.DataId, [_destination], + fly: Task.Fly, + sprint: Task.Sprint, + stopDistance: Task.StopDistance, + ignoreDistanceToObject: Task.IgnoreDistanceToObject, + land: Task.Land); } } - public bool Start() + protected override bool Start() { - _logger.LogInformation("Moving to {Destination}", _destination.ToString("G", CultureInfo.InvariantCulture)); - _startAction(); + _canRestart = Task.RestartNavigation; + _destination = Task.Destination; + + + float stopDistance = Task.StopDistance ?? QuestStep.DefaultStopDistance; + Vector3? position = _clientState.LocalPlayer?.Position; + float actualDistance = position == null ? float.MaxValue : Vector3.Distance(position.Value, _destination); + bool requiresMovement = actualDistance > stopDistance; + if (requiresMovement) + PrepareMovementIfNeeded(); + + // might be able to make this optional + if (Task.Mount == true) + { + var mountTask = new Mount.MountTask(Task.TerritoryId, Mount.EMountIf.Always); + if (_mountExecutor.Start(mountTask)) + { + _nestedExecutor = _mountExecutor; + return true; + } + } + else if (Task.Mount == false) + { + var mountTask = new Mount.UnmountTask(); + if (_unmountExecutor.Start(mountTask)) + { + _nestedExecutor = _unmountExecutor; + return true; + } + } + + if (!Task.DisableNavmesh) + { + if (Task.Mount == null) + { + Mount.EMountIf mountIf = + actualDistance > stopDistance && Task.Fly && + _gameFunctions.IsFlyingUnlocked(Task.TerritoryId) + ? Mount.EMountIf.Always + : Mount.EMountIf.AwayFromPosition; + var mountTask = new Mount.MountTask(Task.TerritoryId, mountIf, _destination); + if (_mountExecutor.Start(mountTask)) + { + _nestedExecutor = _mountExecutor; + return true; + } + } + } + + _nestedExecutor = new NoOpTaskExecutor(); return true; } - public ETaskResult Update() + public override ETaskResult Update() { + if (_nestedExecutor != null) + { + if (_nestedExecutor.Update() == ETaskResult.TaskComplete) + { + _nestedExecutor = null; + if (_startAction != null) + { + _logger.LogInformation("Moving to {Destination}", + _destination.ToString("G", CultureInfo.InvariantCulture)); + _startAction(); + } + else + return ETaskResult.TaskComplete; + } + return ETaskResult.StillRunning; + } + + if (_startAction == null) + return ETaskResult.TaskComplete; + if (_movementController.IsPathfinding || _movementController.IsPathRunning) return ETaskResult.StillRunning; @@ -224,59 +226,94 @@ internal static class MoveTo if (movementStartedAt == DateTime.MaxValue || movementStartedAt.AddSeconds(2) >= DateTime.Now) return ETaskResult.StillRunning; + if (_canRestart && + Vector3.Distance(_clientState.LocalPlayer!.Position, _destination) > + (Task.StopDistance ?? QuestStep.DefaultStopDistance) + 5f) + { + _canRestart = false; + if (_clientState.TerritoryType == Task.TerritoryId) + { + _logger.LogInformation("Looks like movement was interrupted, re-attempting to move"); + _startAction(); + return ETaskResult.StillRunning; + } + else + _logger.LogInformation( + "Looks like movement was interrupted, do nothing since we're in a different territory now"); + } + return ETaskResult.TaskComplete; } - public override string ToString() => $"MoveTo({_destination.ToString("G", CultureInfo.InvariantCulture)})"; public bool OnErrorToast(SeString message) { - if (GameFunctions.GameStringEquals(_cannotExecuteAtThisTime, message.TextValue) && - _condition[ConditionFlag.Diving]) + if (GameFunctions.GameStringEquals(_cannotExecuteAtThisTime, message.TextValue)) return true; return false; } } - internal sealed record MoveParams( + private sealed class NoOpTaskExecutor : TaskExecutor + { + protected override bool Start() => true; + + public override ETaskResult Update() => ETaskResult.TaskComplete; + } + + internal sealed record MoveTask( ushort TerritoryId, Vector3 Destination, + bool? Mount = null, float? StopDistance = null, uint? DataId = null, - bool DisableNavMesh = false, + bool DisableNavmesh = false, bool Sprint = true, bool Fly = false, bool Land = false, - bool IgnoreDistanceToObject = false) + bool IgnoreDistanceToObject = false, + bool RestartNavigation = true, + EInteractionType InteractionType = EInteractionType.None) : ITask { - public MoveParams(QuestStep step, Vector3 destination) + public MoveTask(QuestStep step, Vector3 destination) : this(step.TerritoryId, destination, + step.Mount, step.CalculateActualStopDistance(), step.DataId, step.DisableNavmesh, step.Sprint != false, step.Fly == true, step.Land == true, - step.IgnoreDistanceToObject == true) + step.IgnoreDistanceToObject == true, + step.RestartNavigationIfCancelled != false, + step.InteractionType) { } + + public bool ShouldRedoOnInterrupt() => true; + + public override string ToString() => $"MoveTo({Destination.ToString("G", CultureInfo.InvariantCulture)})"; } - private sealed class WaitForNearDataId( - uint dataId, - float stopDistance, - GameFunctions gameFunctions, - IClientState clientState) : ITask + internal sealed record WaitForNearDataId(uint DataId, float StopDistance) : ITask { - public bool Start() => true; + public bool ShouldRedoOnInterrupt() => true; + } - public ETaskResult Update() + internal sealed class WaitForNearDataIdExecutor( + GameFunctions gameFunctions, + IClientState clientState) : TaskExecutor + { + + protected override bool Start() => true; + + public override ETaskResult Update() { - IGameObject? gameObject = gameFunctions.FindObjectByDataId(dataId); + IGameObject? gameObject = gameFunctions.FindObjectByDataId(Task.DataId); if (gameObject == null || - (gameObject.Position - clientState.LocalPlayer!.Position).Length() > stopDistance) + (gameObject.Position - clientState.LocalPlayer!.Position).Length() > Task.StopDistance) { throw new TaskException("Object not found or too far away, no position so we can't move"); } @@ -285,12 +322,17 @@ internal static class MoveTo } } - private sealed class LandTask(IClientState clientState, ICondition condition, ILogger logger) : ITask + internal sealed class LandTask : ITask + { + public bool ShouldRedoOnInterrupt() => true; + } + + internal sealed class LandExecutor(IClientState clientState, ICondition condition, ILogger logger) : TaskExecutor { private bool _landing; private DateTime _continueAt; - public bool Start() + protected override bool Start() { if (!condition[ConditionFlag.InFlight]) { @@ -303,7 +345,7 @@ internal static class MoveTo return true; } - public ETaskResult Update() + public override ETaskResult Update() { if (DateTime.Now < _continueAt) return ETaskResult.StillRunning; diff --git a/Questionable/Controller/Steps/Shared/SkipCondition.cs b/Questionable/Controller/Steps/Shared/SkipCondition.cs index 1d2420cf..c95ee8ea 100644 --- a/Questionable/Controller/Steps/Shared/SkipCondition.cs +++ b/Questionable/Controller/Steps/Shared/SkipCondition.cs @@ -1,14 +1,10 @@ -using System; -using System.Collections.Generic; -using System.Linq; +using System.Linq; using System.Numerics; using Dalamud.Game.ClientState.Objects.Types; using Dalamud.Plugin.Services; -using FFXIVClientStructs.FFXIV.Application.Network.WorkDefinitions; using FFXIVClientStructs.FFXIV.Client.Game; +using FFXIVClientStructs.FFXIV.Client.Game.Object; using FFXIVClientStructs.FFXIV.Client.Game.UI; -using FFXIVClientStructs.FFXIV.Client.System.Framework; -using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Questionable.Controller.Utils; using Questionable.Functions; @@ -20,12 +16,7 @@ namespace Questionable.Controller.Steps.Shared; internal static class SkipCondition { - internal sealed class Factory( - ILoggerFactory loggerFactory, - AetheryteFunctions aetheryteFunctions, - GameFunctions gameFunctions, - QuestFunctions questFunctions, - IClientState clientState) : SimpleTaskFactory + internal sealed class Factory : SimpleTaskFactory { public override ITask? CreateTask(Quest quest, QuestSequence sequence, QuestStep step) { @@ -40,28 +31,31 @@ internal static class SkipCondition step.NextQuestId == null) return null; - return Check(step, skipConditions, quest.Id); - } - - private CheckSkip Check(QuestStep step, SkipStepConditions? skipConditions, ElementId questId) - { - return new CheckSkip(step, skipConditions ?? new(), questId, loggerFactory.CreateLogger(), - aetheryteFunctions, gameFunctions, questFunctions, clientState); + return new SkipTask(step, skipConditions ?? new(), quest.Id); } } - private sealed class CheckSkip( - QuestStep step, - SkipStepConditions skipConditions, - ElementId elementId, + internal sealed record SkipTask( + QuestStep Step, + SkipStepConditions SkipConditions, + ElementId ElementId) : ITask + { + public override string ToString() => "CheckSkip"; + } + + internal sealed class CheckSkip( ILogger logger, AetheryteFunctions aetheryteFunctions, GameFunctions gameFunctions, QuestFunctions questFunctions, - IClientState clientState) : ITask + IClientState clientState) : TaskExecutor { - public unsafe bool Start() + protected override unsafe bool Start() { + var skipConditions = Task.SkipConditions; + var step = Task.Step; + var elementId = Task.ElementId; + logger.LogInformation("Checking skip conditions; {ConfiguredConditions}", string.Join(",", skipConditions)); if (skipConditions.Flying == ELockedSkipCondition.Unlocked && @@ -132,10 +126,26 @@ internal static class SkipCondition } } + if (skipConditions.NotNamePlateIconId.Count > 0 && + step is { DataId: not null }) + { + IGameObject? target = gameFunctions.FindObjectByDataId(step.DataId.Value); + if (target != null) + { + GameObject* gameObject = (GameObject*)target.Address; + if (!skipConditions.NotNamePlateIconId.Contains(gameObject->NamePlateIconId)) + { + logger.LogInformation("Skipping step, object has icon id {IconId}", gameObject->NamePlateIconId); + return true; + } + } + } + if (skipConditions.Item is { NotInInventory: true } && step is { ItemId: not null }) { InventoryManager* inventoryManager = InventoryManager.Instance(); - if (inventoryManager->GetInventoryItemCount(step.ItemId.Value) == 0) + if (inventoryManager->GetInventoryItemCount(step.ItemId.Value) == 0 && + inventoryManager->GetInventoryItemCount(step.ItemId.Value, true) == 0) { logger.LogInformation("Skipping step, no item with itemId {ItemId} in inventory", step.ItemId.Value); @@ -204,7 +214,8 @@ internal static class SkipCondition } } - if (skipConditions.NearPosition is { } nearPosition && clientState.TerritoryType == step.TerritoryId) + if (skipConditions.NearPosition is { } nearPosition && + clientState.TerritoryType == nearPosition.TerritoryId) { if (Vector3.Distance(nearPosition.Position, clientState.LocalPlayer!.Position) <= nearPosition.MaximumDistance) @@ -251,8 +262,6 @@ internal static class SkipCondition return false; } - public ETaskResult Update() => ETaskResult.SkipRemainingTasksForStep; - - public override string ToString() => "CheckSkip"; + public override ETaskResult Update() => ETaskResult.SkipRemainingTasksForStep; } } diff --git a/Questionable/Controller/Steps/Shared/StepDisabled.cs b/Questionable/Controller/Steps/Shared/StepDisabled.cs index 86487621..f7065359 100644 --- a/Questionable/Controller/Steps/Shared/StepDisabled.cs +++ b/Questionable/Controller/Steps/Shared/StepDisabled.cs @@ -6,27 +6,30 @@ namespace Questionable.Controller.Steps.Shared; internal static class StepDisabled { - internal sealed class Factory(ILoggerFactory loggerFactory) : SimpleTaskFactory + internal sealed class Factory : SimpleTaskFactory { public override ITask? CreateTask(Quest quest, QuestSequence sequence, QuestStep step) { if (!step.Disabled) return null; - return new Task(loggerFactory.CreateLogger()); + return new SkipRemainingTasks(); } } - internal sealed class Task(ILogger logger) : ITask + internal sealed class SkipRemainingTasks : ITask { - public bool Start() => true; + public override string ToString() => "StepDisabled"; + } - public ETaskResult Update() + internal sealed class SkipDisabledStepsExecutor(ILogger logger) : TaskExecutor + { + protected override bool Start() => true; + + public override ETaskResult Update() { logger.LogInformation("Skipping step, as it is disabled"); return ETaskResult.SkipRemainingTasksForStep; } - - public override string ToString() => "StepDisabled"; } } diff --git a/Questionable/Controller/Steps/Shared/SwitchClassJob.cs b/Questionable/Controller/Steps/Shared/SwitchClassJob.cs index bacd4b7d..37ddf1ee 100644 --- a/Questionable/Controller/Steps/Shared/SwitchClassJob.cs +++ b/Questionable/Controller/Steps/Shared/SwitchClassJob.cs @@ -6,31 +6,37 @@ using Questionable.Controller.Steps.Common; namespace Questionable.Controller.Steps.Shared; -internal sealed class SwitchClassJob(EClassJob classJob, IClientState clientState) : AbstractDelayedTask +internal static class SwitchClassJob { - protected override unsafe bool StartInternal() + internal sealed record Task(EClassJob ClassJob) : ITask { - if (clientState.LocalPlayer!.ClassJob.Id == (uint)classJob) - return false; - - var gearsetModule = RaptureGearsetModule.Instance(); - if (gearsetModule != null) - { - for (int i = 0; i < 100; ++i) - { - var gearset = gearsetModule->GetGearset(i); - if (gearset->ClassJob == (byte)classJob) - { - gearsetModule->EquipGearset(gearset->Id); - return true; - } - } - } - - throw new TaskException($"No gearset found for {classJob}"); + public override string ToString() => $"SwitchJob({ClassJob})"; } - protected override ETaskResult UpdateInternal() => ETaskResult.TaskComplete; + internal sealed class SwitchClassJobExecutor(IClientState clientState) : AbstractDelayedTaskExecutor + { + protected override unsafe bool StartInternal() + { + if (clientState.LocalPlayer!.ClassJob.Id == (uint)Task.ClassJob) + return false; - public override string ToString() => $"SwitchJob({classJob})"; + var gearsetModule = RaptureGearsetModule.Instance(); + if (gearsetModule != null) + { + for (int i = 0; i < 100; ++i) + { + var gearset = gearsetModule->GetGearset(i); + if (gearset->ClassJob == (byte)Task.ClassJob) + { + gearsetModule->EquipGearset(gearset->Id); + return true; + } + } + } + + throw new TaskException($"No gearset found for {Task.ClassJob}"); + } + + protected override ETaskResult UpdateInternal() => ETaskResult.TaskComplete; + } } diff --git a/Questionable/Controller/Steps/Shared/WaitAtEnd.cs b/Questionable/Controller/Steps/Shared/WaitAtEnd.cs index 631cbf11..d64c009b 100644 --- a/Questionable/Controller/Steps/Shared/WaitAtEnd.cs +++ b/Questionable/Controller/Steps/Shared/WaitAtEnd.cs @@ -19,9 +19,7 @@ internal static class WaitAtEnd internal sealed class Factory( IClientState clientState, ICondition condition, - TerritoryData territoryData, - QuestFunctions questFunctions, - GameFunctions gameFunctions) + TerritoryData territoryData) : ITaskFactory { public IEnumerable CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) @@ -29,7 +27,7 @@ internal static class WaitAtEnd if (step.CompletionQuestVariablesFlags.Count == 6 && QuestWorkUtils.HasCompletionFlags(step.CompletionQuestVariablesFlags)) { - var task = new WaitForCompletionFlags((QuestId)quest.Id, step, questFunctions); + var task = new WaitForCompletionFlags((QuestId)quest.Id, step); var delay = new WaitDelay(); return [task, delay, Next(quest, sequence)]; } @@ -38,7 +36,7 @@ internal static class WaitAtEnd { case EInteractionType.Combat: var notInCombat = - new WaitConditionTask(() => !condition[ConditionFlag.InCombat], "Wait(not in combat)"); + new WaitCondition.Task(() => !condition[ConditionFlag.InCombat], "Wait(not in combat)"); return [ new WaitDelay(), @@ -49,6 +47,7 @@ internal static class WaitAtEnd case EInteractionType.WaitForManualProgress: case EInteractionType.Instruction: + case EInteractionType.Snipe: return [new WaitNextStepOrSequence()]; case EInteractionType.Duty: @@ -66,8 +65,7 @@ internal static class WaitAtEnd return [ - new WaitObjectAtPosition(step.DataId.Value, step.Position.Value, step.NpcWaitDistance ?? 0.05f, - gameFunctions), + new WaitObjectAtPosition(step.DataId.Value, step.Position.Value, step.NpcWaitDistance ?? 0.5f), new WaitDelay(), Next(quest, sequence) ]; @@ -78,14 +76,14 @@ internal static class WaitAtEnd if (step.TerritoryId != step.TargetTerritoryId) { // interaction moves to a different territory - waitInteraction = new WaitConditionTask( + waitInteraction = new WaitCondition.Task( () => clientState.TerritoryType == step.TargetTerritoryId, $"Wait(tp to territory: {territoryData.GetNameAndId(step.TargetTerritoryId.Value)})"); } else { Vector3 lastPosition = step.Position ?? clientState.LocalPlayer?.Position ?? Vector3.Zero; - waitInteraction = new WaitConditionTask(() => + waitInteraction = new WaitCondition.Task(() => { Vector3? currentPosition = clientState.LocalPlayer?.Position; if (currentPosition == null) @@ -108,7 +106,7 @@ internal static class WaitAtEnd case EInteractionType.AcceptQuest: { - var accept = new WaitQuestAccepted(step.PickUpQuestId ?? quest.Id, questFunctions); + var accept = new WaitQuestAccepted(step.PickUpQuestId ?? quest.Id); var delay = new WaitDelay(); if (step.PickUpQuestId != null) return [accept, delay, Next(quest, sequence)]; @@ -118,7 +116,7 @@ internal static class WaitAtEnd case EInteractionType.CompleteQuest: { - var complete = new WaitQuestCompleted(step.TurnInQuestId ?? quest.Id, questFunctions); + var complete = new WaitQuestCompleted(step.TurnInQuestId ?? quest.Id); var delay = new WaitDelay(); if (step.TurnInQuestId != null) return [complete, delay, Next(quest, sequence)]; @@ -138,103 +136,135 @@ internal static class WaitAtEnd } } - internal sealed class WaitDelay(TimeSpan? delay = null) : AbstractDelayedTask(delay ?? TimeSpan.FromSeconds(1)) + internal sealed record WaitDelay(TimeSpan Delay) : ITask { - protected override bool StartInternal() => true; + public WaitDelay() + : this(TimeSpan.FromSeconds(1)) + { + } + + public bool ShouldRedoOnInterrupt() => true; public override string ToString() => $"Wait(seconds: {Delay.TotalSeconds})"; } + internal sealed class WaitDelayExecutor : AbstractDelayedTaskExecutor + { + protected override bool StartInternal() + { + Delay = Task.Delay; + return true; + } + } + internal sealed class WaitNextStepOrSequence : ITask { - public bool Start() => true; - - public ETaskResult Update() => ETaskResult.StillRunning; - public override string ToString() => "Wait(next step or sequence)"; } - internal sealed class WaitForCompletionFlags(QuestId quest, QuestStep step, QuestFunctions questFunctions) : ITask + internal sealed class WaitNextStepOrSequenceExecutor : TaskExecutor { - public bool Start() => true; + protected override bool Start() => true; - public ETaskResult Update() + public override ETaskResult Update() => ETaskResult.StillRunning; + } + + internal sealed record WaitForCompletionFlags(QuestId Quest, QuestStep Step) : ITask + { + public override string ToString() => + $"Wait(QW: {string.Join(", ", Step.CompletionQuestVariablesFlags.Select(x => x?.ToString() ?? "-"))})"; + } + + internal sealed class WaitForCompletionFlagsExecutor(QuestFunctions questFunctions) + : TaskExecutor + { + protected override bool Start() => true; + + public override ETaskResult Update() { - QuestProgressInfo? questWork = questFunctions.GetQuestProgressInfo(quest); + QuestProgressInfo? questWork = questFunctions.GetQuestProgressInfo(Task.Quest); return questWork != null && - QuestWorkUtils.MatchesQuestWork(step.CompletionQuestVariablesFlags, questWork) + QuestWorkUtils.MatchesQuestWork(Task.Step.CompletionQuestVariablesFlags, questWork) ? ETaskResult.TaskComplete : ETaskResult.StillRunning; } + } + internal sealed record WaitObjectAtPosition( + uint DataId, + Vector3 Destination, + float Distance) : ITask + { public override string ToString() => - $"Wait(QW: {string.Join(", ", step.CompletionQuestVariablesFlags.Select(x => x?.ToString() ?? "-"))})"; + $"WaitObj({DataId} at {Destination.ToString("G", CultureInfo.InvariantCulture)} < {Distance})"; } - private sealed class WaitObjectAtPosition( - uint dataId, - Vector3 destination, - float distance, - GameFunctions gameFunctions) : ITask + internal sealed class WaitObjectAtPositionExecutor(GameFunctions gameFunctions) : TaskExecutor { - public bool Start() => true; + protected override bool Start() => true; - public ETaskResult Update() => - gameFunctions.IsObjectAtPosition(dataId, destination, distance) + public override ETaskResult Update() => + gameFunctions.IsObjectAtPosition(Task.DataId, Task.Destination, Task.Distance) ? ETaskResult.TaskComplete : ETaskResult.StillRunning; - - public override string ToString() => - $"WaitObj({dataId} at {destination.ToString("G", CultureInfo.InvariantCulture)} < {distance})"; } - internal sealed class WaitQuestAccepted(ElementId elementId, QuestFunctions questFunctions) : ITask + internal sealed record WaitQuestAccepted(ElementId ElementId) : ITask { - public bool Start() => true; + public override string ToString() => $"WaitQuestAccepted({ElementId})"; + } - public ETaskResult Update() + internal sealed class WaitQuestAcceptedExecutor(QuestFunctions questFunctions) : TaskExecutor + { + protected override bool Start() => true; + + public override ETaskResult Update() { - return questFunctions.IsQuestAccepted(elementId) + return questFunctions.IsQuestAccepted(Task.ElementId) ? ETaskResult.TaskComplete : ETaskResult.StillRunning; } - - public override string ToString() => $"WaitQuestAccepted({elementId})"; } - internal sealed class WaitQuestCompleted(ElementId elementId, QuestFunctions questFunctions) : ITask + internal sealed record WaitQuestCompleted(ElementId ElementId) : ITask { - public bool Start() => true; + public override string ToString() => $"WaitQuestComplete({ElementId})"; + } - public ETaskResult Update() + internal sealed class WaitQuestCompletedExecutor(QuestFunctions questFunctions) : TaskExecutor + { + protected override bool Start() => true; + + public override ETaskResult Update() { - return questFunctions.IsQuestComplete(elementId) ? ETaskResult.TaskComplete : ETaskResult.StillRunning; + return questFunctions.IsQuestComplete(Task.ElementId) ? ETaskResult.TaskComplete : ETaskResult.StillRunning; } - - public override string ToString() => $"WaitQuestComplete({elementId})"; } - internal sealed class NextStep(ElementId elementId, int sequence) : ILastTask + internal sealed record NextStep(ElementId ElementId, int Sequence) : ILastTask { - public ElementId ElementId { get; } = elementId; - public int Sequence { get; } = sequence; - - public bool Start() => true; - - public ETaskResult Update() => ETaskResult.NextStep; - public override string ToString() => "NextStep"; } + internal sealed class NextStepExecutor : TaskExecutor + { + protected override bool Start() => true; + + public override ETaskResult Update() => ETaskResult.NextStep; + } + internal sealed class EndAutomation : ILastTask { public ElementId ElementId => throw new InvalidOperationException(); public int Sequence => throw new InvalidOperationException(); - public bool Start() => true; - - public ETaskResult Update() => ETaskResult.End; - public override string ToString() => "EndAutomation"; } + internal sealed class EndAutomationExecutor : TaskExecutor + { + + protected override bool Start() => true; + + public override ETaskResult Update() => ETaskResult.End; + } } diff --git a/Questionable/Controller/Steps/Shared/WaitAtStart.cs b/Questionable/Controller/Steps/Shared/WaitAtStart.cs index cbe63e7f..c2c304b4 100644 --- a/Questionable/Controller/Steps/Shared/WaitAtStart.cs +++ b/Questionable/Controller/Steps/Shared/WaitAtStart.cs @@ -18,10 +18,19 @@ internal static class WaitAtStart } } - internal sealed class WaitDelay(TimeSpan delay) : AbstractDelayedTask(delay) - { - protected override bool StartInternal() => true; + internal sealed record WaitDelay(TimeSpan Delay) : ITask + { public override string ToString() => $"Wait[S](seconds: {Delay.TotalSeconds})"; } + + internal sealed class WaitDelayExecutor : AbstractDelayedTaskExecutor + { + protected override bool StartInternal() + { + Delay = Task.Delay; + return true; + } + } + } diff --git a/Questionable/Controller/Steps/TaskExecutor.cs b/Questionable/Controller/Steps/TaskExecutor.cs new file mode 100644 index 00000000..e5b2c2e9 --- /dev/null +++ b/Questionable/Controller/Steps/TaskExecutor.cs @@ -0,0 +1,52 @@ +using System; + +namespace Questionable.Controller.Steps; + +internal interface ITaskExecutor +{ + ITask CurrentTask { get; } + public InteractionProgressContext? ProgressContext { get; } + + Type GetTaskType(); + + bool Start(ITask task); + + bool WasInterrupted(); + + ETaskResult Update(); +} + +internal abstract class TaskExecutor : ITaskExecutor + where T : class, ITask +{ + protected T Task { get; set; } = null!; + public InteractionProgressContext? ProgressContext { get; set; } + ITask ITaskExecutor.CurrentTask => Task; + + public bool WasInterrupted() + { + if (ProgressContext is {} progressContext) + { + progressContext.Update(); + return progressContext.WasInterrupted(); + } + + return false; + } + + public Type GetTaskType() => typeof(T); + + protected abstract bool Start(); + + public bool Start(ITask task) + { + if (task is T t) + { + Task = t; + return Start(); + } + throw new TaskException($"Unable to cast {task.GetType()} to {typeof(T)}"); + } + + public abstract ETaskResult Update(); +} diff --git a/Questionable/Controller/Steps/TaskQueue.cs b/Questionable/Controller/Steps/TaskQueue.cs new file mode 100644 index 00000000..7d30706a --- /dev/null +++ b/Questionable/Controller/Steps/TaskQueue.cs @@ -0,0 +1,59 @@ +using System.Collections.Generic; +using System.Diagnostics.CodeAnalysis; +using System.Linq; + +namespace Questionable.Controller.Steps; + +internal sealed class TaskQueue +{ + private readonly List _completedTasks = []; + private readonly List _tasks = []; + public ITaskExecutor? CurrentTaskExecutor { get; set; } + + public IEnumerable RemainingTasks => _tasks; + public bool AllTasksComplete => CurrentTaskExecutor == null && _tasks.Count == 0; + + public void Enqueue(ITask task) + { + _tasks.Add(task); + } + + public bool TryDequeue([NotNullWhen(true)] out ITask? task) + { + task = _tasks.FirstOrDefault(); + if (task == null) + return false; + + if (task.ShouldRedoOnInterrupt()) + _completedTasks.Add(task); + + _tasks.RemoveAt(0); + return true; + } + + public bool TryPeek([NotNullWhen(true)] out ITask? task) + { + task = _tasks.FirstOrDefault(); + return task != null; + } + + public void Reset() + { + _tasks.Clear(); + _completedTasks.Clear(); + CurrentTaskExecutor = null; + } + + public void InterruptWith(List interruptionTasks) + { + List newTasks = + [ + ..interruptionTasks, + .._completedTasks.Where(x => !ReferenceEquals(x, CurrentTaskExecutor?.CurrentTask)).ToList(), + CurrentTaskExecutor?.CurrentTask, + .._tasks + ]; + Reset(); + _tasks.AddRange(newTasks.Where(x => x != null).Cast()); + } +} diff --git a/Questionable/Controller/Utils/AutoSnipeHandler.cs b/Questionable/Controller/Utils/AutoSnipeHandler.cs new file mode 100644 index 00000000..dc48c3ac --- /dev/null +++ b/Questionable/Controller/Utils/AutoSnipeHandler.cs @@ -0,0 +1,48 @@ +using System; +using Dalamud.Hooking; +using Dalamud.Plugin.Services; +using FFXIVClientStructs.FFXIV.Client.Game.Event; +using FFXIVClientStructs.FFXIV.Common.Lua; + +namespace Questionable.Controller.Utils; + +internal sealed unsafe class AutoSnipeHandler : IDisposable +{ + private readonly QuestController _questController; + private readonly Configuration _configuration; + private readonly Hook _enqueueSnipeTaskHook; + + private delegate ulong EnqueueSnipeTaskDelegate(EventSceneModuleImplBase* scene, lua_State* state); + + public AutoSnipeHandler(QuestController questController, Configuration configuration, IGameInteropProvider gameInteropProvider) + { + _questController = questController; + _configuration = configuration; + + _enqueueSnipeTaskHook = + gameInteropProvider.HookFromSignature( + "48 89 5C 24 ?? 48 89 6C 24 ?? 48 89 74 24 ?? 57 48 83 EC 50 48 8B F1 48 8D 4C 24 ?? E8 ?? ?? ?? ?? 48 8B 4C 24 ??", + EnqueueSnipeTask); + } + + public void Enable() => _enqueueSnipeTaskHook.Enable(); + + private ulong EnqueueSnipeTask(EventSceneModuleImplBase* scene, lua_State* state) + { + if (_configuration.General.AutomaticallyCompleteSnipeTasks && _questController.IsRunning) + { + var val = state->top; + val->tt = 3; + val->value.n = 1; + state->top += 1; + return 1; + } + else + return _enqueueSnipeTaskHook.Original.Invoke(scene, state); + } + + public void Dispose() + { + _enqueueSnipeTaskHook.Dispose(); + } +} diff --git a/Questionable/Controller/Utils/QuestWorkUtils.cs b/Questionable/Controller/Utils/QuestWorkUtils.cs index 56484ecc..5315aa9e 100644 --- a/Questionable/Controller/Utils/QuestWorkUtils.cs +++ b/Questionable/Controller/Utils/QuestWorkUtils.cs @@ -63,7 +63,7 @@ internal static class QuestWorkUtils { if (requiredQuestVariables.Count != 6 || requiredQuestVariables.All(x => x == null || x.Count == 0)) { - logger.LogDebug("No RQW defined"); + logger.LogDebug("No RequiredQW defined"); return true; } @@ -71,7 +71,7 @@ internal static class QuestWorkUtils { if (requiredQuestVariables[i] == null) { - logger.LogInformation("No RQW {Index} defined", i); + logger.LogDebug("No RequiredQW {Index} defined", i); continue; } diff --git a/Questionable/DalamudInitializer.cs b/Questionable/DalamudInitializer.cs index f743ac39..78ac865c 100644 --- a/Questionable/DalamudInitializer.cs +++ b/Questionable/DalamudInitializer.cs @@ -36,6 +36,7 @@ internal sealed class DalamudInitializer : IDisposable QuestSelectionWindow questSelectionWindow, QuestValidationWindow questValidationWindow, JournalProgressWindow journalProgressWindow, + PriorityWindow priorityWindow, IToastGui toastGui, ILogger logger) { @@ -55,6 +56,7 @@ internal sealed class DalamudInitializer : IDisposable _windowSystem.AddWindow(questSelectionWindow); _windowSystem.AddWindow(questValidationWindow); _windowSystem.AddWindow(journalProgressWindow); + _windowSystem.AddWindow(priorityWindow); _pluginInterface.UiBuilder.Draw += _windowSystem.Draw; _pluginInterface.UiBuilder.OpenMainUi += _questWindow.Toggle; diff --git a/Questionable/Data/AetheryteData.cs b/Questionable/Data/AetheryteData.cs index 002f186e..f921972f 100644 --- a/Questionable/Data/AetheryteData.cs +++ b/Questionable/Data/AetheryteData.cs @@ -126,9 +126,18 @@ internal sealed class AetheryteData { EAetheryteLocation.CoerthasCentralHighlandsCampDragonhead, new(223.98718f, 315.7854f, -234.85168f) }, { EAetheryteLocation.MorDhona, new(40.024292f, 24.002441f, -668.0247f) }, - { EAetheryteLocation.GoldSaucer, new(-0.015319824f, 3.4942627f, -0.015319824f) }, { EAetheryteLocation.WolvesDenPier, new(40.93994f, 5.4779663f, -14.816589f) }, + { EAetheryteLocation.GoldSaucer, new(-0.015319824f, 3.4942627f, -0.015319824f) }, + { EAetheryteLocation.GoldSaucerEntranceCardSquares, new(-64.74408f, 2.8839111f, 54.33728f) }, + { EAetheryteLocation.GoldSaucerWonderSquareEast, new(59.067627f, 23.88031f, 63.035034f) }, + { EAetheryteLocation.GoldSaucerWonderSquareWest, new(-0.38153076f, 23.88031f, 58.609863f) }, + { EAetheryteLocation.GoldSaucerEventSquare, new(95.47571f, -2.1210327f, -72.3125f) }, + { EAetheryteLocation.GoldSaucerCactpotBoard, new(114.42737f, 13.595764f, -38.864807f) }, + { EAetheryteLocation.GoldSaucerRoundSquare, new(-24.765442f, 6.1798096f, -85.67944f) }, + { EAetheryteLocation.GoldSaucerChocoboSquare, new(-16.037292f, 2.8839111f, -33.432617f) }, + { EAetheryteLocation.GoldSaucerMinionSquare, new(50.736206f, 2.8839111f, 19.912964f) }, + { EAetheryteLocation.Ishgard, new(-63.98114f, 11.154297f, 43.9917f) }, { EAetheryteLocation.IshgardForgottenKnight, new(45.792236f, 24.551636f, 0.99176025f) }, { EAetheryteLocation.IshgardSkysteelManufactory, new(-111.436646f, 16.128723f, -27.054321f) }, diff --git a/Questionable/Data/LeveData.cs b/Questionable/Data/LeveData.cs index a8d5835c..fcabe5d8 100644 --- a/Questionable/Data/LeveData.cs +++ b/Questionable/Data/LeveData.cs @@ -13,7 +13,21 @@ internal sealed class LeveData { private static readonly List Leves = [ - new(EAetheryteLocation.Tuliyollal, 1048390, new(15.243713f, -14.000001f, 85.83191f)), + new( + aetheryteLocation: EAetheryteLocation.Crystarium, + aethernetShortcut: new AethernetShortcut{From = EAetheryteLocation.Crystarium, To = EAetheryteLocation.CrystariumCrystallineMean}, + issuerDataId: 1027847, + issuerPosition: new(-73.94349f, 19.999794f, -110.86395f)), + new( + aetheryteLocation: EAetheryteLocation.OldSharlayan, + aethernetShortcut: new AethernetShortcut + { From = EAetheryteLocation.OldSharlayan, To = EAetheryteLocation.OldSharlayanScholarsHarbor }, + issuerDataId: 1037263, + issuerPosition: new(45.818386f, -15.646993f, 109.40509f)), + new(aetheryteLocation: EAetheryteLocation.Tuliyollal, + aethernetShortcut: null, + issuerDataId: 1048390, + issuerPosition: new(15.243713f, -14.000001f, 85.83191f)), ]; private readonly AetheryteData _aetheryteData; @@ -44,6 +58,7 @@ internal sealed class LeveData TerritoryId = _aetheryteData.TerritoryIds[leveStepData.AetheryteLocation], InteractionType = EInteractionType.AcceptLeve, AetheryteShortcut = leveStepData.AetheryteLocation, + AethernetShortcut = leveStepData.AethernetShortcut, SkipConditions = new() { AetheryteShortcutIf = new() @@ -71,6 +86,7 @@ internal sealed class LeveData TerritoryId = _aetheryteData.TerritoryIds[leveStepData.AetheryteLocation], InteractionType = EInteractionType.CompleteLeve, AetheryteShortcut = leveStepData.AetheryteLocation, + AethernetShortcut = leveStepData.AethernetShortcut, SkipConditions = new() { AetheryteShortcutIf = new() @@ -93,10 +109,16 @@ internal sealed class LeveData private readonly uint? _crafterTurnInDataId; private readonly Vector3? _crafterTurnInPosition; - public LeveStepData(EAetheryteLocation aetheryteLocation, uint issuerDataId, Vector3 issuerPosition, - uint? turnInDataId = null, Vector3? turnInPosition = null, - uint? gathererTurnInDataId = null, Vector3? gathererTurnInPosition = null, - uint? crafterTurnInDataId = null, Vector3? crafterTurnInPosition = null) + public LeveStepData(EAetheryteLocation aetheryteLocation, + AethernetShortcut? aethernetShortcut, + uint issuerDataId, + Vector3 issuerPosition, + uint? turnInDataId = null, + Vector3? turnInPosition = null, + uint? gathererTurnInDataId = null, + Vector3? gathererTurnInPosition = null, + uint? crafterTurnInDataId = null, + Vector3? crafterTurnInPosition = null) { _turnInDataId = turnInDataId; _turnInPosition = turnInPosition; @@ -105,11 +127,13 @@ internal sealed class LeveData _crafterTurnInDataId = crafterTurnInDataId; _crafterTurnInPosition = crafterTurnInPosition; AetheryteLocation = aetheryteLocation; + AethernetShortcut = aethernetShortcut; IssuerDataId = issuerDataId; IssuerPosition = issuerPosition; } public EAetheryteLocation AetheryteLocation { get; } + public AethernetShortcut? AethernetShortcut { get; } public uint IssuerDataId { get; } public Vector3 IssuerPosition { get; } diff --git a/Questionable/Data/QuestData.cs b/Questionable/Data/QuestData.cs index f9164806..e74f28e5 100644 --- a/Questionable/Data/QuestData.cs +++ b/Questionable/Data/QuestData.cs @@ -8,7 +8,8 @@ using LLib.GameData; using Lumina.Excel.GeneratedSheets; using Questionable.Model; using Questionable.Model.Questing; -using Quest = Lumina.Excel.GeneratedSheets.Quest; +using Leve = Lumina.Excel.GeneratedSheets2.Leve; +using Quest = Lumina.Excel.GeneratedSheets2.Quest; namespace Questionable.Data; @@ -44,12 +45,22 @@ internal sealed class QuestData .Where(x => x.RowId > 0 && x.Quest.Row > 0) .ToDictionary(x => x.Quest.Row, x => x.Redo); + Dictionary startingCities = new(); + for (byte redoChapter = 1; redoChapter <= 3; ++redoChapter) + { + var questRedo = dataManager.GetExcelSheet()!.GetRow(redoChapter)!; + foreach (var quest in questRedo.Quest.Where(x => x.Row > 0)) + startingCities[quest.Row] = redoChapter; + } + List quests = [ ..dataManager.GetExcelSheet()! .Where(x => x.RowId > 0) .Where(x => x.IssuerLocation.Row > 0) - .Select(x => new QuestInfo(x, questChapters.GetValueOrDefault(x.RowId))), + .Select(x => new QuestInfo(x, questChapters.GetValueOrDefault(x.RowId), + startingCities.GetValueOrDefault(x.RowId))) + .Where(x => x.QuestId.Value != 1428), ..dataManager.GetExcelSheet()! .Where(x => x.RowId > 0) .Select(x => new SatisfactionSupplyInfo(x)), @@ -61,8 +72,131 @@ internal sealed class QuestData _quests = quests.ToDictionary(x => x.QuestId, x => x); // workaround because the game doesn't require completion of the CT questline through normal means - QuestInfo aTimeToEveryPurpose = (QuestInfo)_quests[new QuestId(425)]; - aTimeToEveryPurpose.AddPreviousQuest(new QuestId(495)); + AddPreviousQuest(new QuestId(425), new QuestId(495)); + + // "In order to undertake this quest" [...] + const int mountaintopDiplomacy = 1619; + const int inscrutableTastes = 2095; + const int tideGoesIn = 2490; + const int firstOfMany = 2534; + const int achtIaOrmhInn = 3320; + AddPreviousQuest(new QuestId(1480), new QuestId(2373)); + AddPreviousQuest(new QuestId(1717), new QuestId(mountaintopDiplomacy)); + AddPreviousQuest(new QuestId(2088), new QuestId(mountaintopDiplomacy)); + AddPreviousQuest(new QuestId(2062), new QuestId(1617)); + AddPreviousQuest(new QuestId(2063), new QuestId(mountaintopDiplomacy)); + AddPreviousQuest(new QuestId(2257), new QuestId(1655)); + AddPreviousQuest(new QuestId(2608), new QuestId(firstOfMany)); + AddPreviousQuest(new QuestId(2600), new QuestId(2466)); + AddPreviousQuest(new QuestId(2622), new QuestId(tideGoesIn)); + AddPreviousQuest(new QuestId(2624), new QuestId(firstOfMany)); + AddPreviousQuest(new QuestId(2898), new QuestId(tideGoesIn)); + AddPreviousQuest(new QuestId(2974), new QuestId(2491)); + AddPreviousQuest(new QuestId(2975), new QuestId(2630)); + AddPreviousQuest(new QuestId(2912), new QuestId(tideGoesIn)); + AddPreviousQuest(new QuestId(2914), new QuestId(2537)); + AddPreviousQuest(new QuestId(2919), new QuestId(2455)); + AddPreviousQuest(new QuestId(2952), new QuestId(2518)); + AddPreviousQuest(new QuestId(2904), new QuestId(2503)); + AddPreviousQuest(new QuestId(3038), new QuestId(firstOfMany)); + AddPreviousQuest(new QuestId(3087), new QuestId(100)); + AddPreviousQuest(new QuestId(3246), new QuestId(3314)); + AddPreviousQuest(new QuestId(3247), new QuestId(achtIaOrmhInn)); + AddPreviousQuest(new QuestId(3270), new QuestId(3333)); + AddPreviousQuest(new QuestId(3271), new QuestId(3634)); + AddPreviousQuest(new QuestId(3264), new QuestId(2247)); + AddPreviousQuest(new QuestId(3253), new QuestId(2247)); + AddPreviousQuest(new QuestId(3254), new QuestId(2537)); + AddPreviousQuest(new QuestId(3228), new QuestId(achtIaOrmhInn)); + AddPreviousQuest(new QuestId(3234), new QuestId(achtIaOrmhInn)); + AddPreviousQuest(new QuestId(3237), new QuestId(achtIaOrmhInn)); + AddPreviousQuest(new QuestId(3238), new QuestId(3634)); + AddPreviousQuest(new QuestId(3240), new QuestId(achtIaOrmhInn)); + AddPreviousQuest(new QuestId(3241), new QuestId(3648)); + AddPreviousQuest(new QuestId(3628), new QuestId(3301)); + AddPreviousQuest(new QuestId(3655), new QuestId(inscrutableTastes)); + AddPreviousQuest(new QuestId(3771), new QuestId(495)); + AddPreviousQuest(new QuestId(4068), new QuestId(1658)); + AddPreviousQuest(new QuestId(4078), new QuestId(1583)); + AddPreviousQuest(new QuestId(4150), new QuestId(4417)); + AddPreviousQuest(new QuestId(4155), new QuestId(4383)); + AddPreviousQuest(new QuestId(4156), new QuestId(3326)); + AddPreviousQuest(new QuestId(4158), new QuestId(4434)); + AddPreviousQuest(new QuestId(4159), new QuestId(4464)); + AddPreviousQuest(new QuestId(4163), new QuestId(4398)); + AddPreviousQuest(new QuestId(4165), new QuestId(4438)); + AddPreviousQuest(new QuestId(4473), new QuestId(inscrutableTastes)); + AddPreviousQuest(new QuestId(4650), new QuestId(2374)); + AddPreviousQuest(new QuestId(4662), new QuestId(3166)); + AddPreviousQuest(new QuestId(4761), new QuestId(4032)); + AddPreviousQuest(new QuestId(4812), new QuestId(4750)); + AddPreviousQuest(new QuestId(4851), new QuestId(2446)); + AddPreviousQuest(new QuestId(4856), new QuestId(1669)); + AddPreviousQuest(new QuestId(4857), new QuestId(2553)); + AddPreviousQuest(new QuestId(4979), new QuestId(4896)); + AddPreviousQuest(new QuestId(4980), new QuestId(4911)); + AddPreviousQuest(new QuestId(4985), new QuestId(4903)); + AddPreviousQuest(new QuestId(4987), new QuestId(4912)); + AddPreviousQuest(new QuestId(4988), new QuestId(4942)); + AddPreviousQuest(new QuestId(4992), new QuestId(4912)); + AddPreviousQuest(new QuestId(4999), new QuestId(4908)); + AddPreviousQuest(new QuestId(4966), new QuestId(inscrutableTastes)); + AddPreviousQuest(new QuestId(5000), new QuestId(4908)); + AddPreviousQuest(new QuestId(5001), new QuestId(4912)); + + // "In order to proceed with this quest" [...] + /* my little chocobo + AddPreviousQuest(new QuestId(1036), new QuestId()); + AddPreviousQuest(new QuestId(1663), new QuestId()); + AddPreviousQuest(new QuestId(3771), new QuestId()); + AddPreviousQuest(new QuestId(4521), new QuestId()); + */ + /* only applicable for fishers + const int spearfishing = 2922; + AddPreviousQuest(new QuestId(3811), new QuestId(spearfishing)); + AddPreviousQuest(new QuestId(3812), new QuestId(spearfishing)); + AddPreviousQuest(new QuestId(3817), new QuestId(spearfishing)); + AddPreviousQuest(new QuestId(3818), new QuestId(spearfishing)); + AddPreviousQuest(new QuestId(3821), new QuestId(spearfishing)); + AddPreviousQuest(new QuestId(3833), new QuestId(spearfishing)); + */ + + // initial city quests are side quests + // unclear if 470 can be started as the required quest isn't available anymore + ushort[] limsaSideQuests = + [107, 111, 112, 122, 663, 475, 472, 476, 470, 473, 474, 477, 486, 478, 479, 487, 59, 400, 401, 693, 405]; + foreach (var questId in limsaSideQuests) + ((QuestInfo)_quests[new QuestId(questId)]).StartingCity = 1; + + ushort[] gridaniaQuests = + [39, 1, 32, 34, 37, 172, 127, 130, 60, 220, 378]; + foreach (var questId in gridaniaQuests) + ((QuestInfo)_quests[new QuestId(questId)]).StartingCity = 2; + + ushort[] uldahSideQuests = + [594, 389, 390, 321, 304, 322, 388, 308, 326, 1429, 58, 687, 341, 504, 531, 506, 530, 573, 342, 505]; + foreach (var questId in uldahSideQuests) + ((QuestInfo)_quests[new QuestId(questId)]).StartingCity = 3; + + + // follow-up quests to picking a GC + AddGcFollowUpQuests(); + } + + private void AddPreviousQuest(QuestId questToUpdate, QuestId requiredQuestId) + { + QuestInfo quest = (QuestInfo)_quests[questToUpdate]; + quest.AddPreviousQuest(new PreviousQuestInfo(requiredQuestId)); + } + + private void AddGcFollowUpQuests() + { + QuestId[] questIds = [new(683), new(684), new(685)]; + foreach (QuestId questId in questIds) + { + QuestInfo quest = (QuestInfo)_quests[questId]; + quest.AddQuestLocks(EQuestJoin.AtLeastOne, questIds.Where(x => x != questId).ToArray()); + } } public IQuestInfo GetQuestInfo(ElementId elementId) @@ -102,38 +236,38 @@ internal sealed class QuestData // ARR EClassJob.Gladiator => [63], - EClassJob.Paladin => [72, 73, 74, 75], + EClassJob.Paladin => [72, 73, 74], EClassJob.Marauder => [64], - EClassJob.Warrior => [76, 77, 78, 79], + EClassJob.Warrior => [76, 77, 78], EClassJob.Conjurer => [65], - EClassJob.WhiteMage => [86, 87, 88, 89], + EClassJob.WhiteMage => [86, 87, 88], EClassJob.Arcanist => [66], - EClassJob.Summoner => [127, 128, 129, 130], - EClassJob.Scholar => [90, 91, 92, 93], + EClassJob.Summoner => [127, 128, 129], + EClassJob.Scholar => [90, 91, 92], EClassJob.Pugilist => [67], - EClassJob.Monk => [98, 99, 100, 101], + EClassJob.Monk => [98, 99, 100], EClassJob.Lancer => [68], - EClassJob.Dragoon => [102, 103, 104, 105], + EClassJob.Dragoon => [102, 103, 104], EClassJob.Rogue => [69], - EClassJob.Ninja => [106, 107, 108, 109], + EClassJob.Ninja => [106, 107, 108], EClassJob.Archer => [70], - EClassJob.Bard => [113, 114, 115, 116], + EClassJob.Bard => [113, 114, 115], EClassJob.Thaumaturge => [71], - EClassJob.BlackMage => [123, 124, 125, 126], + EClassJob.BlackMage => [123, 124, 125], // HW - EClassJob.DarkKnight => [80, 81, 82, 83], - EClassJob.Astrologian => [94, 95, 96, 97], - EClassJob.Machinist => [117, 118, 119, 120], + EClassJob.DarkKnight => [80, 81, 82], + EClassJob.Astrologian => [94, 95, 96], + EClassJob.Machinist => [117, 118, 119], // SB - EClassJob.Samurai => [110, 111, 112], - EClassJob.RedMage => [131, 132, 133], - EClassJob.BlueMage => [134, 135, 146, 170], + EClassJob.Samurai => [110, 111], + EClassJob.RedMage => [131, 132], + EClassJob.BlueMage => [134, 135, 146], // ShB - EClassJob.Gunbreaker => [84, 85], - EClassJob.Dancer => [121, 122], + EClassJob.Gunbreaker => [84], + EClassJob.Dancer => [121], // EW EClassJob.Sage => [152], @@ -198,16 +332,24 @@ internal sealed class QuestData if (startingClass == EClassJob.Adventurer) return []; - return + // If you start the game as another class, you get: + // - "So you want to be a XX" + // - "Way of the XX" (depends on "So you want to be a XX") + // - "My First XX" + // If you start the game with this class, you get: + // - "Way of the XX" (no preconditions) + // In both cases, the level 10 quests are different + List> startingClassQuests = [ - startingClass == EClassJob.Gladiator ? new(177) : new(253), - startingClass == EClassJob.Pugilist ? new(178) : new(533), - startingClass == EClassJob.Marauder ? new(179) : new(311), - startingClass == EClassJob.Lancer ? new(180) : new(23), - startingClass == EClassJob.Archer ? new(181) : new(21), - startingClass == EClassJob.Conjurer ? new(182) : new(22), - startingClass == EClassJob.Thaumaturge ? new(183) : new(345), - startingClass == EClassJob.Arcanist ? new(451) : new(453), + startingClass == EClassJob.Gladiator ? [177, 285, 286, 288] : [253, 261], + startingClass == EClassJob.Pugilist ? [178, 532, 553, 698] : [533, 555], + startingClass == EClassJob.Marauder ? [179, 310, 312, 315] : [311, 314], + startingClass == EClassJob.Lancer ? [180, 132, 218, 143] : [23, 35], + startingClass == EClassJob.Archer ? [181, 131, 219, 134] : [21, 67], + startingClass == EClassJob.Conjurer ? [182, 133, 211, 147] : [22, 91], + startingClass == EClassJob.Thaumaturge ? [183, 344, 346, 349] : [345, 348], + startingClass == EClassJob.Arcanist ? [451, 452, 454, 457] : [453, 456], ]; + return startingClassQuests.SelectMany(x => x).Select(x => new QuestId(x)).ToList(); } } diff --git a/Questionable/Data/TerritoryData.cs b/Questionable/Data/TerritoryData.cs index 0175cf6d..0b20d9a9 100644 --- a/Questionable/Data/TerritoryData.cs +++ b/Questionable/Data/TerritoryData.cs @@ -12,7 +12,7 @@ internal sealed class TerritoryData { private readonly ImmutableDictionary _territoryNames; private readonly ImmutableHashSet _territoriesWithMount; - private readonly ImmutableHashSet _dutyTerritories; + private readonly ImmutableDictionary _dutyTerritories; private readonly ImmutableDictionary _instanceNames; public TerritoryData(IDataManager dataManager) @@ -35,8 +35,7 @@ internal sealed class TerritoryData _dutyTerritories = dataManager.GetExcelSheet()! .Where(x => x.RowId > 0 && x.ContentFinderCondition.Row != 0) - .Select(x => (ushort)x.RowId) - .ToImmutableHashSet(); + .ToImmutableDictionary(x => (ushort)x.RowId, x => x.ContentFinderCondition.Value!.ContentType.Row); _instanceNames = dataManager.GetExcelSheet()! .Where(x => x.RowId > 0 && x.Content != 0 && x.ContentLinkType == 1 && x.ContentType.Row != 6) @@ -56,7 +55,10 @@ internal sealed class TerritoryData public bool CanUseMount(ushort territoryId) => _territoriesWithMount.Contains(territoryId); - public bool IsDutyInstance(ushort territoryId) => _dutyTerritories.Contains(territoryId); + public bool IsDutyInstance(ushort territoryId) => _dutyTerritories.ContainsKey(territoryId); + + public bool IsQuestBattleInstance(ushort territoryId) => + _dutyTerritories.TryGetValue(territoryId, out uint contentType) && contentType == 7; public string? GetInstanceName(ushort instanceId) => _instanceNames.GetValueOrDefault(instanceId); } diff --git a/Questionable/External/QuestionableIpc.cs b/Questionable/External/QuestionableIpc.cs new file mode 100644 index 00000000..c6459134 --- /dev/null +++ b/Questionable/External/QuestionableIpc.cs @@ -0,0 +1,32 @@ +using System; +using Dalamud.Plugin; +using Dalamud.Plugin.Ipc; +using Questionable.Controller; + +namespace Questionable.External; + +internal sealed class QuestionableIpc : IDisposable +{ + private const string IpcIsRunning = "Questionable.IsRunning"; + private const string IpcGetCurrentQuestId = "Questionable.GetCurrentQuestId"; + + private readonly ICallGateProvider _isRunning; + private readonly ICallGateProvider _getCurrentQuestId; + + public QuestionableIpc(QuestController questController, IDalamudPluginInterface pluginInterface) + { + _isRunning = pluginInterface.GetIpcProvider(IpcIsRunning); + _isRunning.RegisterFunc(() => + questController.AutomationType != QuestController.EAutomationType.Manual || questController.IsRunning); + + _getCurrentQuestId = pluginInterface.GetIpcProvider(IpcGetCurrentQuestId); + _getCurrentQuestId.RegisterFunc(() => questController.CurrentQuest?.Quest.Id.ToString()); + } + + + public void Dispose() + { + _getCurrentQuestId.UnregisterFunc(); + _isRunning.UnregisterFunc(); + } +} diff --git a/Questionable/External/TextAdvanceIpc.cs b/Questionable/External/TextAdvanceIpc.cs new file mode 100644 index 00000000..dd4fa395 --- /dev/null +++ b/Questionable/External/TextAdvanceIpc.cs @@ -0,0 +1,85 @@ +using Dalamud.Plugin; +using Dalamud.Plugin.Ipc; +using Dalamud.Plugin.Services; +using FFXIVClientStructs.FFXIV.Client.Game; +using Questionable.Controller; +using Questionable.Data; +using Questionable.Model.Common; +using System; +using System.Diagnostics.CodeAnalysis; + +namespace Questionable.External; + +internal sealed class TextAdvanceIpc : IDisposable +{ + private bool _isExternalControlActivated; + private readonly QuestController _questController; + private readonly Configuration _configuration; + private readonly IFramework _framework; + private readonly ICallGateSubscriber _isInExternalControl; + private readonly ICallGateSubscriber _enableExternalControl; + private readonly ICallGateSubscriber _disableExternalControl; + private readonly string _pluginName; + private readonly ExternalTerritoryConfig _externalTerritoryConfig = new(); + + public TextAdvanceIpc(IDalamudPluginInterface pluginInterface, IFramework framework, QuestController questController, Configuration configuration) + { + _framework = framework; + _questController = questController; + _configuration = configuration; + _isInExternalControl = pluginInterface.GetIpcSubscriber("TextAdvance.IsInExternalControl"); + _enableExternalControl = pluginInterface.GetIpcSubscriber("TextAdvance.EnableExternalControl"); + _disableExternalControl = pluginInterface.GetIpcSubscriber("TextAdvance.DisableExternalControl"); + _pluginName = pluginInterface.InternalName; + _framework.Update += OnUpdate; + } + + public void Dispose() + { + _framework.Update -= OnUpdate; + if(_isExternalControlActivated) + { + _disableExternalControl.InvokeFunc(_pluginName); + } + } + + private void OnUpdate(IFramework framework) + { + if(_configuration.General.ConfigureTextAdvance && _questController.IsRunning) + { + if(!_isInExternalControl.InvokeFunc()) + { + if(_enableExternalControl.InvokeFunc(_pluginName, _externalTerritoryConfig)) + { + _isExternalControlActivated = true; + } + } + } + else + { + if(_isExternalControlActivated) + { + if(_disableExternalControl.InvokeFunc(_pluginName) || !_isInExternalControl.InvokeFunc()) + { + _isExternalControlActivated = false; + } + } + } + } + + [SuppressMessage("ReSharper", "MemberCanBePrivate.Global")] + public sealed class ExternalTerritoryConfig + { +#pragma warning disable CS0414 // Field is assigned but its value is never used + public bool? EnableQuestAccept = true; + public bool? EnableQuestComplete = true; + public bool? EnableRewardPick = true; + public bool? EnableRequestHandin = true; + public bool? EnableCutsceneEsc = true; + public bool? EnableCutsceneSkipConfirm = true; + public bool? EnableTalkSkip = true; + public bool? EnableRequestFill = true; + public bool? EnableAutoInteract = false; +#pragma warning restore CS0414 // Field is assigned but its value is never used + } +} diff --git a/Questionable/Functions/ExcelFunctions.cs b/Questionable/Functions/ExcelFunctions.cs index cb0cf63e..e1278a59 100644 --- a/Questionable/Functions/ExcelFunctions.cs +++ b/Questionable/Functions/ExcelFunctions.cs @@ -91,6 +91,11 @@ internal sealed class ExcelFunctions var questRow = _dataManager.GetExcelSheet()!.GetRow(rowId); return questRow?.Unknown10; } + else if (excelSheet is "GilShop") + { + var questRow = _dataManager.GetExcelSheet()!.GetRow(rowId); + return questRow?.Name; + } else if (excelSheet is "ContentTalk" or null) { var questRow = _dataManager.GetExcelSheet()!.GetRow(rowId); diff --git a/Questionable/Functions/GameFunctions.cs b/Questionable/Functions/GameFunctions.cs index fda0c60d..2cc2e122 100644 --- a/Questionable/Functions/GameFunctions.cs +++ b/Questionable/Functions/GameFunctions.cs @@ -81,8 +81,9 @@ internal sealed unsafe class GameFunctions if (_questFunctions.IsQuestAccepted(new QuestId(3304)) && _condition[ConditionFlag.Mounted]) { - BattleChara* battleChara = (BattleChara*)(_clientState.LocalPlayer?.Address ?? 0); - if (battleChara != null && battleChara->Mount.MountId == 198) // special quest amaro, not the normal one + // special quest amaro, not the normal one + // TODO Check if this also applies to beast tribe mounts + if (GetMountId() == 198) return true; } @@ -92,6 +93,15 @@ internal sealed unsafe class GameFunctions playerState->IsAetherCurrentZoneComplete(aetherCurrentCompFlgSet); } + public ushort? GetMountId() + { + BattleChara* battleChara = (BattleChara*)(_clientState.LocalPlayer?.Address ?? 0); + if (battleChara != null && battleChara->Mount.MountId != 0) + return battleChara->Mount.MountId; + else + return null; + } + public bool IsFlyingUnlockedInCurrentZone() => IsFlyingUnlocked(_clientState.TerritoryType); public bool IsAetherCurrentUnlocked(uint aetherCurrentId) @@ -172,9 +182,7 @@ internal sealed unsafe class GameFunctions long result = AgentInventoryContext.Instance()->UseItem(itemId); _logger.LogInformation("UseItem result on {DataId}: {Result}", dataId, result); - - // TODO is 1 a generally accepted result? - return result == 0 || (itemId == 2002450 && result == 1); + return result is 0 or 1; } return false; @@ -210,10 +218,10 @@ internal sealed unsafe class GameFunctions return false; } - public bool UseAction(IGameObject gameObject, EAction action) + public bool UseAction(IGameObject gameObject, EAction action, bool checkCanUse = true) { var actionRow = _dataManager.GetExcelSheet()!.GetRow((uint)action)!; - if (!ActionManager.CanUseActionOnTarget((uint)action, (GameObject*)gameObject.Address)) + if (checkCanUse && !ActionManager.CanUseActionOnTarget((uint)action, (GameObject*)gameObject.Address)) { _logger.LogWarning("Can not use action {Action} on target {Target}", action, gameObject); return false; @@ -300,6 +308,11 @@ internal sealed unsafe class GameFunctions StatusManager* statusManager = battleChara->GetStatusManager(); return statusManager->HasStatus(statusId); } + + public static bool RemoveStatus(uint statusId) + { + return StatusManager.ExecuteStatusOff(statusId); + } public bool Mount() { @@ -398,7 +411,7 @@ internal sealed unsafe class GameFunctions if (!_clientState.IsLoggedIn || _clientState.LocalPlayer == null) return true; - if (IsLoadingScreenVisible(true)) + if (IsLoadingScreenVisible()) return true; if (_condition[ConditionFlag.Crafting]) @@ -431,25 +444,23 @@ internal sealed unsafe class GameFunctions if (!AgentSatisfactionSupply.Instance()->IsAgentActive()) return false; - var flags = _condition.AsReadOnlySet(); + var flags = _condition.AsReadOnlySet().ToHashSet(); + flags.Remove(ConditionFlag.InDutyQueue); // irrelevant return flags.Count == 2 && flags.Contains(ConditionFlag.NormalConditions) && flags.Contains(ConditionFlag.OccupiedInQuestEvent); } - public bool IsLoadingScreenVisible(bool all) + public bool IsLoadingScreenVisible() { if (_gameGui.TryGetAddonByName("FadeMiddle", out AtkUnitBase* fade) && LAddon.IsAddonReady(fade) && fade->IsVisible) return true; - if (all) - { - if (_gameGui.TryGetAddonByName("FadeBack", out fade) && LAddon.IsAddonReady(fade) && fade->IsVisible) - return true; + if (_gameGui.TryGetAddonByName("FadeBack", out fade) && LAddon.IsAddonReady(fade) && fade->IsVisible) + return true; - if (_gameGui.TryGetAddonByName("NowLoading", out fade) && LAddon.IsAddonReady(fade) && fade->IsVisible) - return true; - } + if (_gameGui.TryGetAddonByName("NowLoading", out fade) && LAddon.IsAddonReady(fade) && fade->IsVisible) + return true; return false; } diff --git a/Questionable/Functions/QuestFunctions.cs b/Questionable/Functions/QuestFunctions.cs index 13eee5e4..b0a92395 100644 --- a/Questionable/Functions/QuestFunctions.cs +++ b/Questionable/Functions/QuestFunctions.cs @@ -12,7 +12,6 @@ using FFXIVClientStructs.FFXIV.Component.GUI; using LLib.GameData; using LLib.GameUI; using Lumina.Excel.GeneratedSheets; -using Microsoft.Extensions.Logging; using Questionable.Controller; using Questionable.Controller.Steps.Interactions; using Questionable.Data; @@ -32,7 +31,6 @@ internal sealed unsafe class QuestFunctions private readonly IDataManager _dataManager; private readonly IClientState _clientState; private readonly IGameGui _gameGui; - private readonly ILogger _logger; public QuestFunctions( QuestRegistry questRegistry, @@ -41,8 +39,7 @@ internal sealed unsafe class QuestFunctions Configuration configuration, IDataManager dataManager, IClientState clientState, - IGameGui gameGui, - ILogger logger) + IGameGui gameGui) { _questRegistry = questRegistry; _questData = questData; @@ -51,7 +48,6 @@ internal sealed unsafe class QuestFunctions _dataManager = dataManager; _clientState = clientState; _gameGui = gameGui; - _logger = logger; } public (ElementId? CurrentQuest, byte Sequence) GetCurrentQuest() @@ -80,6 +76,7 @@ internal sealed unsafe class QuestFunctions { GrandCompany.TwinAdder => (new QuestId(680), 0), GrandCompany.Maelstrom => (new QuestId(681), 0), + GrandCompany.ImmortalFlames => (new QuestId(682), 0), _ => default }; } @@ -89,6 +86,7 @@ internal sealed unsafe class QuestFunctions { GrandCompany.TwinAdder => 700, GrandCompany.Maelstrom => 701, + GrandCompany.ImmortalFlames => 702, _ => 0 }; @@ -137,17 +135,14 @@ internal sealed unsafe class QuestFunctions currentQuest = new QuestId(questManager->NormalQuests[trackedQuest.Index].QuestId); if (_questRegistry.IsKnownQuest(currentQuest)) return (currentQuest, QuestManager.GetQuestSequence(currentQuest.Value)); - break; + continue; case 2: // leve currentQuest = new LeveId(questManager->LeveQuests[trackedQuest.Index].LeveId); if (_questRegistry.IsKnownQuest(currentQuest)) return (currentQuest, questManager->GetLeveQuestById(currentQuest.Value)->Sequence); - break; + continue; } - - if (_questRegistry.IsKnownQuest(currentQuest)) - return (currentQuest, QuestManager.GetQuestSequence(currentQuest.Value)); } ElementId? priorityQuest = GetNextPriorityQuestThatCanBeAccepted(); @@ -256,7 +251,8 @@ internal sealed unsafe class QuestFunctions InventoryManager* inventoryManager = InventoryManager.Instance(); int gil = inventoryManager->GetItemCountInContainer(1, InventoryType.Currency); - return GetPriorityQuestsThatCanBeAccepted() + return GetPriorityQuests() + .Where(IsReadyToAcceptQuest) .Where(x => { if (!_questRegistry.TryGetQuest(x, out Quest? quest)) @@ -266,14 +262,7 @@ internal sealed unsafe class QuestFunctions if (firstStep == null) return false; - if (firstStep.AetheryteShortcut != null) - return true; - - if (firstStep is - { InteractionType: EInteractionType.UseItem, ItemId: UseItem.VesperBayAetheryteTicket }) - return true; - - return false; + return firstStep.IsTeleportableForPriorityQuests(); }) .FirstOrDefault(x => { @@ -307,16 +296,13 @@ internal sealed unsafe class QuestFunctions private static int EstimateTeleportCosts(Quest quest) { - /* if (quest.Info.Expansion == EExpansionVersion.ARealmReborn) return 300 * quest.AllSteps().Count(x => x.Step.AetheryteShortcut != null); else return 1000 * quest.AllSteps().Count(x => x.Step.AetheryteShortcut != null); - */ - return 0; } - private List GetPriorityQuestsThatCanBeAccepted() + public List GetPriorityQuests() { List priorityQuests = [ @@ -354,7 +340,6 @@ internal sealed unsafe class QuestFunctions return priorityQuests .Where(_questRegistry.IsKnownQuest) - .Where(IsReadyToAcceptQuest) .ToList(); } @@ -365,6 +350,9 @@ internal sealed unsafe class QuestFunctions { if (IsQuestAccepted(questId)) return false; + + if (QuestManager.Instance()->IsDailyQuestCompleted(questId.Value)) + return false; } else { @@ -447,35 +435,29 @@ internal sealed unsafe class QuestFunctions return IsQuestLocked(questId, extraCompletedQuest); else if (elementId is LeveId leveId) return IsQuestLocked(leveId); - else if (elementId is SatisfactionSupplyNpcId) - return false; + else if (elementId is SatisfactionSupplyNpcId satisfactionSupplyNpcId) + return IsQuestLocked(satisfactionSupplyNpcId); else throw new ArgumentOutOfRangeException(nameof(elementId)); } - public bool IsQuestLocked(QuestId questId, ElementId? extraCompletedQuest = null) + private bool IsQuestLocked(QuestId questId, ElementId? extraCompletedQuest = null) { - var questInfo = (QuestInfo)_questData.GetQuestInfo(questId); - if (questInfo.QuestLocks.Count > 0) - { - var completedQuests = questInfo.QuestLocks.Count(x => IsQuestComplete(x) || x.Equals(extraCompletedQuest)); - if (questInfo.QuestLockJoin == QuestInfo.QuestJoin.All && questInfo.QuestLocks.Count == completedQuests) - return true; - else if (questInfo.QuestLockJoin == QuestInfo.QuestJoin.AtLeastOne && completedQuests > 0) - return true; - } - - if (questInfo.GrandCompany != GrandCompany.None && questInfo.GrandCompany != GetGrandCompany()) + if (IsQuestUnobtainable(questId, extraCompletedQuest)) return true; - if (_questData.GetLockedClassQuests().Contains(questId)) + var questInfo = (QuestInfo)_questData.GetQuestInfo(questId); + if (questInfo.GrandCompany != GrandCompany.None && questInfo.GrandCompany != GetGrandCompany()) return true; return !HasCompletedPreviousQuests(questInfo, extraCompletedQuest) || !HasCompletedPreviousInstances(questInfo); } - public bool IsQuestLocked(LeveId leveId) + private bool IsQuestLocked(LeveId leveId) { + if (IsQuestUnobtainable(leveId)) + return true; + // this only checks for the current class IQuestInfo questInfo = _questData.GetQuestInfo(leveId); if (!questInfo.ClassJobs.Contains((EClassJob)_clientState.LocalPlayer!.ClassJob.Id) || @@ -485,31 +467,128 @@ internal sealed unsafe class QuestFunctions return !IsQuestAccepted(leveId) && QuestManager.Instance()->NumLeveAllowances == 0; } - private bool HasCompletedPreviousQuests(QuestInfo questInfo, ElementId? extraCompletedQuest) + private bool IsQuestLocked(SatisfactionSupplyNpcId satisfactionSupplyNpcId) + { + SatisfactionSupplyInfo questInfo = (SatisfactionSupplyInfo)_questData.GetQuestInfo(satisfactionSupplyNpcId); + return !HasCompletedPreviousQuests(questInfo, null); + } + + public bool IsQuestUnobtainable(ElementId elementId, ElementId? extraCompletedQuest = null) + { + if (elementId is QuestId questId) + return IsQuestUnobtainable(questId, extraCompletedQuest); + else if (elementId is LeveId leveId) + return IsQuestUnobtainable(leveId); + else + return false; + } + + public bool IsQuestUnobtainable(QuestId questId, ElementId? extraCompletedQuest = null) + { + var questInfo = (QuestInfo)_questData.GetQuestInfo(questId); + if (questInfo.Expansion > (EExpansionVersion)PlayerState.Instance()->MaxExpansion) + return true; + + if (questInfo.QuestLocks.Count > 0) + { + var completedQuests = questInfo.QuestLocks.Count(x => IsQuestComplete(x) || x.Equals(extraCompletedQuest)); + if (questInfo.QuestLockJoin == EQuestJoin.All && questInfo.QuestLocks.Count == completedQuests) + return true; + else if (questInfo.QuestLockJoin == EQuestJoin.AtLeastOne && completedQuests > 0) + return true; + } + + if (_questData.GetLockedClassQuests().Contains(questId)) + return true; + + var startingCity = PlayerState.Instance()->StartTown; + if (questInfo.StartingCity > 0 && questInfo.StartingCity != startingCity) + return true; + + if (questId.Value == 674 && startingCity == 3) + return true; + if (questId.Value == 673 && startingCity != 3) + return true; + + Dictionary closeToHomeQuests = new() + { + { 108, EClassJob.Marauder }, + { 109, EClassJob.Arcanist }, + { 85, EClassJob.Lancer }, + { 123, EClassJob.Archer }, + { 124, EClassJob.Conjurer }, + { 568, EClassJob.Gladiator }, + { 569, EClassJob.Pugilist }, + { 570, EClassJob.Thaumaturge } + }; + + // The starting class experience is a bit confusing. If you start in Gridania, the MSQ next quest data will + // always select 'Close to Home (Lancer)' even if starting as Conjurer/Archer. However, if we always mark the + // Lancer quest as unobtainable, it'll not get picked up as Conjurer/Archer, and thus will stop questing. + // + // While the NPC offers all 3 quests, there's no manual selection, and interacting will automatically select the + // quest for your current class, then switch you from a dead-ish intro zone to the actual starting city + // (so that you can't come back later to pick up another quest). + if (closeToHomeQuests.TryGetValue(questId.Value, out EClassJob neededStartingClass) && + closeToHomeQuests.Any(x => IsQuestAcceptedOrComplete(new QuestId(x.Key)))) + { + EClassJob actualStartingClass = (EClassJob)PlayerState.Instance()->FirstClass; + if (actualStartingClass != neededStartingClass) + return true; + } + + return false; + } + + private bool IsQuestUnobtainable(LeveId leveId) + { + IQuestInfo questInfo = _questData.GetQuestInfo(leveId); + if (questInfo.Expansion > (EExpansionVersion)PlayerState.Instance()->MaxExpansion) + return true; + + return false; + } + + private bool HasCompletedPreviousQuests(IQuestInfo questInfo, ElementId? extraCompletedQuest) { if (questInfo.PreviousQuests.Count == 0) return true; - var completedQuests = questInfo.PreviousQuests.Count(x => IsQuestComplete(x) || x.Equals(extraCompletedQuest)); - if (questInfo.PreviousQuestJoin == QuestInfo.QuestJoin.All && + var completedQuests = questInfo.PreviousQuests.Count(x => + HasEnoughProgressOnPreviousQuest(x) || x.QuestId.Equals(extraCompletedQuest)); + if (questInfo.PreviousQuestJoin == EQuestJoin.All && questInfo.PreviousQuests.Count == completedQuests) return true; - else if (questInfo.PreviousQuestJoin == QuestInfo.QuestJoin.AtLeastOne && completedQuests > 0) + else if (questInfo.PreviousQuestJoin == EQuestJoin.AtLeastOne && completedQuests > 0) return true; else return false; } + private bool HasEnoughProgressOnPreviousQuest(PreviousQuestInfo previousQuestInfo) + { + if (IsQuestComplete(previousQuestInfo.QuestId)) + return true; + + if (previousQuestInfo.Sequence != 0 && IsQuestAccepted(previousQuestInfo.QuestId)) + { + var progress = GetQuestProgressInfo(previousQuestInfo.QuestId); + return progress != null && progress.Sequence >= previousQuestInfo.Sequence; + } + + return false; + } + private static bool HasCompletedPreviousInstances(QuestInfo questInfo) { if (questInfo.PreviousInstanceContent.Count == 0) return true; var completedInstances = questInfo.PreviousInstanceContent.Count(x => UIState.IsInstanceContentCompleted(x)); - if (questInfo.PreviousInstanceContentJoin == QuestInfo.QuestJoin.All && + if (questInfo.PreviousInstanceContentJoin == EQuestJoin.All && questInfo.PreviousInstanceContent.Count == completedInstances) return true; - else if (questInfo.PreviousInstanceContentJoin == QuestInfo.QuestJoin.AtLeastOne && completedInstances > 0) + else if (questInfo.PreviousInstanceContentJoin == EQuestJoin.AtLeastOne && completedInstances > 0) return true; else return false; diff --git a/Questionable/Model/EQuestJoin.cs b/Questionable/Model/EQuestJoin.cs new file mode 100644 index 00000000..61abf423 --- /dev/null +++ b/Questionable/Model/EQuestJoin.cs @@ -0,0 +1,13 @@ +using System.Diagnostics.CodeAnalysis; +using JetBrains.Annotations; + +namespace Questionable.Model; + +[SuppressMessage("Design", "CA1028", Justification = "Game type")] +[UsedImplicitly(ImplicitUseKindFlags.Assign, ImplicitUseTargetFlags.Members)] +internal enum EQuestJoin : byte +{ + None = 0, + All = 1, + AtLeastOne = 2, +} diff --git a/Questionable/Model/IQuestInfo.cs b/Questionable/Model/IQuestInfo.cs index 5bc8d5f9..143f6046 100644 --- a/Questionable/Model/IQuestInfo.cs +++ b/Questionable/Model/IQuestInfo.cs @@ -1,17 +1,20 @@ using System; using System.Collections.Generic; +using System.Collections.Immutable; using Dalamud.Game.Text; using LLib.GameData; using Questionable.Model.Questing; namespace Questionable.Model; -public interface IQuestInfo +internal interface IQuestInfo { public ElementId QuestId { get; } public string Name { get; } public uint IssuerDataId { get; } public bool IsRepeatable { get; } + public ImmutableList PreviousQuests { get; } + public EQuestJoin PreviousQuestJoin { get; } public ushort Level { get; } public EAlliedSociety AlliedSociety { get; } public uint? JournalGenre { get; } @@ -22,5 +25,14 @@ public interface IQuestInfo public string SimplifiedName => Name .Replace(".", "", StringComparison.Ordinal) + .Replace("*", "", StringComparison.Ordinal) + .Replace("\"", "", StringComparison.Ordinal) + .Replace("/", "", StringComparison.Ordinal) + .Replace("\\", "", StringComparison.Ordinal) + .Replace("<", "", StringComparison.Ordinal) + .Replace(">", "", StringComparison.Ordinal) + .Replace("|", "", StringComparison.Ordinal) + .Replace(":", "", StringComparison.Ordinal) + .Replace("?", "", StringComparison.Ordinal) .TrimStart(SeIconChar.QuestSync.ToIconChar(), SeIconChar.QuestRepeatable.ToIconChar(), ' '); } diff --git a/Questionable/Model/LeveInfo.cs b/Questionable/Model/LeveInfo.cs index b446da9a..14878f71 100644 --- a/Questionable/Model/LeveInfo.cs +++ b/Questionable/Model/LeveInfo.cs @@ -1,6 +1,7 @@ using System.Collections.Generic; +using System.Collections.Immutable; using LLib.GameData; -using Lumina.Excel.GeneratedSheets; +using Lumina.Excel.GeneratedSheets2; using Questionable.Model.Questing; namespace Questionable.Model; @@ -14,7 +15,7 @@ internal sealed class LeveInfo : IQuestInfo Level = leve.ClassJobLevel; JournalGenre = leve.JournalGenre.Row; SortKey = QuestId.Value; - IssuerDataId = leve.LevelLevemete.Value!.Object; + IssuerDataId = leve.LevelLevemete.Value!.Object.Row; ClassJobs = QuestInfoUtils.AsList(leve.ClassJobCategory.Value!); Expansion = (EExpansionVersion)leve.LevelLevemete.Value.Territory.Value!.ExVersion.Row; } @@ -22,6 +23,8 @@ internal sealed class LeveInfo : IQuestInfo public ElementId QuestId { get; } public string Name { get; } public uint IssuerDataId { get; } + public ImmutableList PreviousQuests { get; } = []; + public EQuestJoin PreviousQuestJoin => EQuestJoin.All; public bool IsRepeatable => true; public ushort Level { get; } public EAlliedSociety AlliedSociety => EAlliedSociety.None; diff --git a/Questionable/Model/PreviousQuestInfo.cs b/Questionable/Model/PreviousQuestInfo.cs new file mode 100644 index 00000000..302a32e8 --- /dev/null +++ b/Questionable/Model/PreviousQuestInfo.cs @@ -0,0 +1,5 @@ +using Questionable.Model.Questing; + +namespace Questionable.Model; + +internal sealed record PreviousQuestInfo(QuestId QuestId, byte Sequence = 0); diff --git a/Questionable/Model/QuestInfo.cs b/Questionable/Model/QuestInfo.cs index 2c9c2951..6149209a 100644 --- a/Questionable/Model/QuestInfo.cs +++ b/Questionable/Model/QuestInfo.cs @@ -1,17 +1,18 @@ -using System.Collections.Generic; +using System; +using System.Collections.Generic; using System.Collections.Immutable; using System.Linq; using FFXIVClientStructs.FFXIV.Client.UI.Agent; using JetBrains.Annotations; using LLib.GameData; using Questionable.Model.Questing; -using ExcelQuest = Lumina.Excel.GeneratedSheets.Quest; +using ExcelQuest = Lumina.Excel.GeneratedSheets2.Quest; namespace Questionable.Model; internal sealed class QuestInfo : IQuestInfo { - public QuestInfo(ExcelQuest quest, ushort newGamePlusChapter) + public QuestInfo(ExcelQuest quest, ushort newGamePlusChapter, byte startingCity) { QuestId = new QuestId((ushort)(quest.RowId & 0xFFFF)); @@ -27,34 +28,43 @@ internal sealed class QuestInfo : IQuestInfo 570 => " (Thaumaturge)", 673 => " (Ul'dah)", 674 => " (Limsa/Gridania)", + 1432 => " (Gridania)", + 1433 => " (Limsa)", + 1434 => " (Ul'dah)", _ => "", }; Name = $"{quest.Name}{suffix}"; - Level = quest.ClassJobLevel0; - IssuerDataId = quest.IssuerStart; + Level = quest.ClassJobLevel[0]; + IssuerDataId = quest.IssuerStart.Row; IsRepeatable = quest.IsRepeatable; - PreviousQuests = quest.PreviousQuest - .Select(x => new QuestId((ushort)(x.Row & 0xFFFF))) - .Where(x => x.Value != 0) - .ToImmutableList(); - PreviousQuestJoin = (QuestJoin)quest.PreviousQuestJoin; + PreviousQuests = + new List + { + new(new QuestId((ushort)(quest.PreviousQuest[0].Row & 0xFFFF)), quest.Unknown7), + new(new QuestId((ushort)(quest.PreviousQuest[1].Row & 0xFFFF))), + new(new QuestId((ushort)(quest.PreviousQuest[2].Row & 0xFFFF))) + } + .Where(x => x.QuestId.Value != 0) + .ToImmutableList(); + PreviousQuestJoin = (EQuestJoin)quest.PreviousQuestJoin; QuestLocks = quest.QuestLock .Select(x => new QuestId((ushort)(x.Row & 0xFFFFF))) .Where(x => x.Value != 0) .ToImmutableList(); - QuestLockJoin = (QuestJoin)quest.QuestLockJoin; + QuestLockJoin = (EQuestJoin)quest.QuestLockJoin; JournalGenre = quest.JournalGenre?.Row; SortKey = quest.SortKey; IsMainScenarioQuest = quest.JournalGenre?.Value?.JournalCategory?.Value?.JournalSection?.Row is 0 or 1; - CompletesInstantly = quest.ToDoCompleteSeq[0] == 0; + CompletesInstantly = quest.TodoParams[0].ToDoCompleteSeq == 0; PreviousInstanceContent = quest.InstanceContent.Select(x => (ushort)x.Row).Where(x => x != 0).ToList(); - PreviousInstanceContentJoin = (QuestJoin)quest.InstanceContentJoin; + PreviousInstanceContentJoin = (EQuestJoin)quest.InstanceContentJoin; GrandCompany = (GrandCompany)quest.GrandCompany.Row; AlliedSociety = (EAlliedSociety)quest.BeastTribe.Row; ClassJobs = QuestInfoUtils.AsList(quest.ClassJobCategory0.Value!); IsSeasonalEvent = quest.Festival.Row != 0; NewGamePlusChapter = newGamePlusChapter; + StartingCity = startingCity; Expansion = (EExpansionVersion)quest.Expansion.Row; } @@ -64,12 +74,12 @@ internal sealed class QuestInfo : IQuestInfo public ushort Level { get; } public uint IssuerDataId { get; } public bool IsRepeatable { get; } - public ImmutableList PreviousQuests { get; set; } - public QuestJoin PreviousQuestJoin { get; } - public ImmutableList QuestLocks { get; } - public QuestJoin QuestLockJoin { get; } + public ImmutableList PreviousQuests { get; private set; } + public EQuestJoin PreviousQuestJoin { get; } + public ImmutableList QuestLocks { get; private set; } + public EQuestJoin QuestLockJoin { get; private set; } public List PreviousInstanceContent { get; } - public QuestJoin PreviousInstanceContentJoin { get; } + public EQuestJoin PreviousInstanceContentJoin { get; } public uint? JournalGenre { get; } public ushort SortKey { get; } public bool IsMainScenarioQuest { get; } @@ -79,18 +89,20 @@ internal sealed class QuestInfo : IQuestInfo public IReadOnlyList ClassJobs { get; } public bool IsSeasonalEvent { get; } public ushort NewGamePlusChapter { get; } + public byte StartingCity { get; set; } public EExpansionVersion Expansion { get; } - [UsedImplicitly(ImplicitUseKindFlags.Assign, ImplicitUseTargetFlags.Members)] - public enum QuestJoin : byte - { - None = 0, - All = 1, - AtLeastOne = 2, - } - - public void AddPreviousQuest(QuestId questId) + public void AddPreviousQuest(PreviousQuestInfo questId) { PreviousQuests = [..PreviousQuests, questId]; } + + public void AddQuestLocks(EQuestJoin questJoin, params QuestId[] questId) + { + if (QuestLocks.Count > 0 && QuestLockJoin != questJoin) + throw new InvalidOperationException(); + + QuestLockJoin = questJoin; + QuestLocks = [..QuestLocks, ..questId]; + } } diff --git a/Questionable/Model/QuestInfoUtils.cs b/Questionable/Model/QuestInfoUtils.cs index 68845884..4f44fd4a 100644 --- a/Questionable/Model/QuestInfoUtils.cs +++ b/Questionable/Model/QuestInfoUtils.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; using System.Linq; using LLib.GameData; -using Lumina.Excel.GeneratedSheets; +using Lumina.Excel.GeneratedSheets2; namespace Questionable.Model; @@ -57,8 +57,8 @@ internal static class QuestInfoUtils { EClassJob.Dancer, classJobCategory.DNC }, { EClassJob.Reaper, classJobCategory.RPR }, { EClassJob.Sage, classJobCategory.SGE }, - { EClassJob.Viper, classJobCategory.VPR }, - { EClassJob.Pictomancer, classJobCategory.PCT } + { EClassJob.Viper, classJobCategory.Unknown1 }, + { EClassJob.Pictomancer, classJobCategory.Unknown2 } } .Where(y => y.Value) .Select(y => y.Key) diff --git a/Questionable/Model/SatisfactionSupplyInfo.cs b/Questionable/Model/SatisfactionSupplyInfo.cs index 9b3a7a6d..41f6d5e2 100644 --- a/Questionable/Model/SatisfactionSupplyInfo.cs +++ b/Questionable/Model/SatisfactionSupplyInfo.cs @@ -1,4 +1,5 @@ using System.Collections.Generic; +using System.Collections.Immutable; using LLib.GameData; using Lumina.Excel.GeneratedSheets; using Questionable.Model.Questing; @@ -15,12 +16,15 @@ internal sealed class SatisfactionSupplyInfo : IQuestInfo Level = npc.LevelUnlock; SortKey = QuestId.Value; Expansion = (EExpansionVersion)npc.QuestRequired.Value!.Expansion.Row; + PreviousQuests = [new PreviousQuestInfo(new QuestId((ushort)(npc.QuestRequired.Row & 0xFFFF)))]; } public ElementId QuestId { get; } public string Name { get; } public uint IssuerDataId { get; } public bool IsRepeatable => true; + public ImmutableList PreviousQuests { get; } + public EQuestJoin PreviousQuestJoin => EQuestJoin.All; public ushort Level { get; } public EAlliedSociety AlliedSociety => EAlliedSociety.None; public uint? JournalGenre => null; diff --git a/Questionable/Questionable.csproj b/Questionable/Questionable.csproj index 376045ee..8d1a3c89 100644 --- a/Questionable/Questionable.csproj +++ b/Questionable/Questionable.csproj @@ -13,7 +13,7 @@ - + diff --git a/Questionable/QuestionablePlugin.cs b/Questionable/QuestionablePlugin.cs index db3510cf..bdb639f4 100644 --- a/Questionable/QuestionablePlugin.cs +++ b/Questionable/QuestionablePlugin.cs @@ -18,6 +18,7 @@ using Questionable.Controller.Steps.Common; using Questionable.Controller.Steps.Gathering; using Questionable.Controller.Steps.Interactions; using Questionable.Controller.Steps.Leves; +using Questionable.Controller.Utils; using Questionable.Data; using Questionable.External; using Questionable.Functions; @@ -55,6 +56,7 @@ public sealed class QuestionablePlugin : IDalamudPlugin { ArgumentNullException.ThrowIfNull(pluginInterface); ArgumentNullException.ThrowIfNull(chatGui); + try { ServiceCollection serviceCollection = new(); @@ -108,6 +110,7 @@ public sealed class QuestionablePlugin : IDalamudPlugin serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); @@ -120,49 +123,94 @@ public sealed class QuestionablePlugin : IDalamudPlugin serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); } private static void AddTaskFactories(ServiceCollection serviceCollection) { // individual tasks - serviceCollection.AddTransient(); - serviceCollection.AddTransient(); - serviceCollection.AddTransient(); - serviceCollection.AddTransient(); - serviceCollection.AddSingleton(); + serviceCollection + .AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); // task factories - serviceCollection.AddTaskFactory(); + serviceCollection + .AddTaskFactoryAndExecutor(); serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); + serviceCollection.AddTaskFactoryAndExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection + .AddTaskFactoryAndExecutor(); + serviceCollection + .AddTaskExecutor(); + serviceCollection + .AddTaskFactoryAndExecutor(); + serviceCollection + .AddTaskFactoryAndExecutor(); + serviceCollection + .AddTaskFactoryAndExecutor(); + serviceCollection.AddTaskFactoryAndExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); - serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); + serviceCollection + .AddTaskFactoryAndExecutor(); + serviceCollection + .AddTaskFactoryAndExecutor(); + serviceCollection + .AddTaskFactoryAndExecutor(); + serviceCollection.AddTaskFactoryAndExecutor(); + serviceCollection.AddTaskFactoryAndExecutor(); + serviceCollection.AddTaskFactoryAndExecutor(); serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskFactoryAndExecutor(); + serviceCollection.AddTaskFactoryAndExecutor(); serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskFactoryAndExecutor(); + serviceCollection.AddTaskFactoryAndExecutor(); serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); - serviceCollection.AddTaskFactory(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskFactoryAndExecutor(); + serviceCollection + .AddTaskFactoryAndExecutor(); + serviceCollection.AddTaskFactoryAndExecutor(); + serviceCollection + .AddTaskFactoryAndExecutor(); + serviceCollection.AddTaskFactory(); + serviceCollection + .AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + + serviceCollection.AddTaskExecutor(); serviceCollection.AddTaskFactory(); - serviceCollection.AddTransient(); - serviceCollection.AddTransient(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); + serviceCollection.AddTaskExecutor(); serviceCollection.AddSingleton(); } @@ -177,6 +225,7 @@ public sealed class QuestionablePlugin : IDalamudPlugin serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); @@ -184,6 +233,8 @@ public sealed class QuestionablePlugin : IDalamudPlugin serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); } @@ -208,6 +259,7 @@ public sealed class QuestionablePlugin : IDalamudPlugin serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); } private static void AddQuestValidators(ServiceCollection serviceCollection) @@ -220,6 +272,7 @@ public sealed class QuestionablePlugin : IDalamudPlugin serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(sp => sp.GetRequiredService()); } @@ -234,7 +287,11 @@ public sealed class QuestionablePlugin : IDalamudPlugin serviceProvider.GetRequiredService(); serviceProvider.GetRequiredService(); serviceProvider.GetRequiredService(); + serviceProvider.GetRequiredService(); + serviceProvider.GetRequiredService(); serviceProvider.GetRequiredService(); + serviceProvider.GetRequiredService().Enable(); + serviceProvider.GetRequiredService(); } public void Dispose() diff --git a/Questionable/ServiceCollectionExtensions.cs b/Questionable/ServiceCollectionExtensions.cs index 0247cefe..2b17a831 100644 --- a/Questionable/ServiceCollectionExtensions.cs +++ b/Questionable/ServiceCollectionExtensions.cs @@ -1,4 +1,5 @@ -using JetBrains.Annotations; +using Dalamud.Plugin.Services; +using JetBrains.Annotations; using Microsoft.Extensions.DependencyInjection; using Questionable.Controller.Steps; @@ -7,11 +8,37 @@ namespace Questionable; internal static class ServiceCollectionExtensions { public static void AddTaskFactory< - [MeansImplicitUse(ImplicitUseKindFlags.InstantiatedNoFixedConstructorSignature)] TFactory>( + [MeansImplicitUse(ImplicitUseKindFlags.InstantiatedNoFixedConstructorSignature)] + TFactory>( this IServiceCollection serviceCollection) where TFactory : class, ITaskFactory { serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); } + + public static void AddTaskExecutor( + this IServiceCollection serviceCollection) + where T : class, ITask + where TExecutor : TaskExecutor + { + serviceCollection.AddKeyedTransient(typeof(T)); + serviceCollection.AddTransient(); + } + + public static void AddTaskFactoryAndExecutor( + this IServiceCollection serviceCollection) + where TFactory : class, ITaskFactory + where T : class, ITask + where TExecutor : TaskExecutor + { + serviceCollection.AddTaskFactory(); + serviceCollection.AddTaskExecutor(); + } } diff --git a/Questionable/Validation/EIssueType.cs b/Questionable/Validation/EIssueType.cs index 0f51ce6b..75512481 100644 --- a/Questionable/Validation/EIssueType.cs +++ b/Questionable/Validation/EIssueType.cs @@ -17,4 +17,5 @@ public enum EIssueType UnexpectedCompleteQuestStep, InvalidAethernetShortcut, InvalidExcelRef, + ClassQuestWithoutAetheryteShortcut, } diff --git a/Questionable/Validation/QuestValidator.cs b/Questionable/Validation/QuestValidator.cs index 80050d40..847c705b 100644 --- a/Questionable/Validation/QuestValidator.cs +++ b/Questionable/Validation/QuestValidator.cs @@ -5,6 +5,7 @@ using System.Threading; using System.Threading.Tasks; using Microsoft.Extensions.Logging; using Questionable.Model; +using Questionable.Model.Questing; namespace Questionable.Validation; @@ -91,6 +92,9 @@ internal sealed class QuestValidator }, CancellationToken.None, TaskCreationOptions.LongRunning, TaskScheduler.Default); } + public List GetIssues(ElementId elementId) => + _validationIssues.Where(x => x.ElementId == elementId).ToList(); + private static IEnumerable DisabledTribesAsIssues(Dictionary disabledTribeQuests) { return disabledTribeQuests diff --git a/Questionable/Validation/Validators/ClassQuestShouldHaveShortcutValidator.cs b/Questionable/Validation/Validators/ClassQuestShouldHaveShortcutValidator.cs new file mode 100644 index 00000000..680ef124 --- /dev/null +++ b/Questionable/Validation/Validators/ClassQuestShouldHaveShortcutValidator.cs @@ -0,0 +1,51 @@ +using System.Collections.Generic; +using LLib.GameData; +using Questionable.Data; +using Questionable.Model; +using Questionable.Model.Questing; + +namespace Questionable.Validation.Validators; + +internal sealed class ClassQuestShouldHaveShortcutValidator : IQuestValidator +{ + private readonly HashSet _classJobQuests = []; + + public ClassQuestShouldHaveShortcutValidator(QuestData questData) + { + foreach (EClassJob classJob in typeof(EClassJob).GetEnumValues()) + { + if (classJob == EClassJob.Adventurer) + continue; + + foreach (var questInfo in questData.GetClassJobQuests(classJob)) + { + // TODO maybe remove the level check + if (questInfo.Level > 1) + _classJobQuests.Add(questInfo.QuestId); + } + } + } + + public IEnumerable Validate(Quest quest) + { + if (!_classJobQuests.Contains(quest.Id)) + yield break; + + var firstStep = quest.FindSequence(0)?.FindStep(0); + if (firstStep == null) + yield break; + + if (firstStep.IsTeleportableForPriorityQuests()) + yield break; + + yield return new ValidationIssue + { + ElementId = quest.Id, + Sequence = 0, + Step = 0, + Type = EIssueType.ClassQuestWithoutAetheryteShortcut, + Severity = EIssueSeverity.Error, + Description = "Class quest should have an aetheryte shortcut to be done automatically", + }; + } +} diff --git a/Questionable/Windows/ConfigWindow.cs b/Questionable/Windows/ConfigWindow.cs index c2148aa1..0416943f 100644 --- a/Questionable/Windows/ConfigWindow.cs +++ b/Questionable/Windows/ConfigWindow.cs @@ -20,7 +20,7 @@ internal sealed class ConfigWindow : LWindow, IPersistableWindowConfig private readonly string[] _mountNames; private readonly string[] _grandCompanyNames = - ["None (manually pick quest)", "Maelstrom", "Twin Adder" /*, "Immortal Flames"*/]; + ["None (manually pick quest)", "Maelstrom", "Twin Adder", "Immortal Flames"]; [SuppressMessage("Performance", "CA1861", Justification = "One time initialization")] public ConfigWindow(IDalamudPluginInterface pluginInterface, Configuration configuration, IDataManager dataManager) @@ -90,6 +90,24 @@ internal sealed class ConfigWindow : LWindow, IPersistableWindowConfig Save(); } + bool configureTextAdvance = _configuration.General.ConfigureTextAdvance; + if (ImGui.Checkbox("Automatically configure TextAdvance with the recommended settings", ref configureTextAdvance)) + { + _configuration.General.ConfigureTextAdvance = configureTextAdvance; + Save(); + } + + if (ImGui.CollapsingHeader("Cheats")) + { + ImGui.TextColored(ImGuiColors.DalamudRed, "This setting will be removed in a future version, and will be\navailable through TextAdvance instead."); + bool automaticallyCompleteSnipeTasks = _configuration.General.AutomaticallyCompleteSnipeTasks; + if (ImGui.Checkbox("Automatically complete snipe tasks", ref automaticallyCompleteSnipeTasks)) + { + _configuration.General.AutomaticallyCompleteSnipeTasks = automaticallyCompleteSnipeTasks; + Save(); + } + } + ImGui.EndTabItem(); } diff --git a/Questionable/Windows/DebugOverlay.cs b/Questionable/Windows/DebugOverlay.cs index e629fe01..2f5f8916 100644 --- a/Questionable/Windows/DebugOverlay.cs +++ b/Questionable/Windows/DebugOverlay.cs @@ -25,7 +25,8 @@ internal sealed class DebugOverlay : Window private readonly Configuration _configuration; public DebugOverlay(QuestController questController, QuestRegistry questRegistry, IGameGui gameGui, - IClientState clientState, ICondition condition, AetheryteData aetheryteData, IObjectTable objectTable, CombatController combatController, Configuration configuration) + IClientState clientState, ICondition condition, AetheryteData aetheryteData, IObjectTable objectTable, + CombatController combatController, Configuration configuration) : base("Questionable Debug Overlay###QuestionableDebugOverlay", ImGuiWindowFlags.NoTitleBar | ImGuiWindowFlags.NoScrollbar | ImGuiWindowFlags.NoBackground | ImGuiWindowFlags.NoInputs | ImGuiWindowFlags.NoSavedSettings, true) @@ -45,6 +46,8 @@ internal sealed class DebugOverlay : Window Size = ImGui.GetIO().DisplaySize; SizeCondition = ImGuiCond.Always; IsOpen = true; + ShowCloseButton = false; + RespectCloseHotkey = false; } public ElementId? HighlightedQuest { get; set; } @@ -134,7 +137,9 @@ internal sealed class DebugOverlay : Window if (!visible) continue; - ImGui.GetWindowDrawList() .AddText(screenPos + new Vector2(10, -8), 0xFFFFFFFF, $"{x.Name}/{x.GameObjectId:X}, {_combatController.GetKillPriority(x)}, {Vector3.Distance(x.Position, _clientState.LocalPlayer!.Position):N2}, {x.IsTargetable}"); + int priority = _combatController.GetKillPriority(x); + ImGui.GetWindowDrawList().AddText(screenPos + new Vector2(10, -8), priority > 0 ? 0xFF00FF00 : 0xFFFFFFFF, + $"{x.Name}/{x.GameObjectId:X}, {x.DataId}, {priority}, {Vector3.Distance(x.Position, _clientState.LocalPlayer!.Position):N2}, {x.IsTargetable}"); } } diff --git a/Questionable/Windows/JournalComponents/QuestJournalComponent.cs b/Questionable/Windows/JournalComponents/QuestJournalComponent.cs index 9aa04a7e..f273b00d 100644 --- a/Questionable/Windows/JournalComponents/QuestJournalComponent.cs +++ b/Questionable/Windows/JournalComponents/QuestJournalComponent.cs @@ -13,15 +13,16 @@ using Questionable.Data; using Questionable.Functions; using Questionable.Model; using Questionable.Model.Questing; +using Questionable.Validation; using Questionable.Windows.QuestComponents; namespace Questionable.Windows.JournalComponents; internal sealed class QuestJournalComponent { - private readonly Dictionary _genreCounts = new(); - private readonly Dictionary _categoryCounts = new(); - private readonly Dictionary _sectionCounts = new(); + private readonly Dictionary _genreCounts = []; + private readonly Dictionary _categoryCounts = []; + private readonly Dictionary _sectionCounts = []; private readonly JournalData _journalData; private readonly QuestRegistry _questRegistry; @@ -31,13 +32,14 @@ internal sealed class QuestJournalComponent private readonly IDalamudPluginInterface _pluginInterface; private readonly QuestController _questController; private readonly ICommandManager _commandManager; + private readonly QuestValidator _questValidator; private List _filteredSections = []; private string _searchText = string.Empty; public QuestJournalComponent(JournalData journalData, QuestRegistry questRegistry, QuestFunctions questFunctions, UiUtils uiUtils, QuestTooltipComponent questTooltipComponent, IDalamudPluginInterface pluginInterface, - QuestController questController, ICommandManager commandManager) + QuestController questController, ICommandManager commandManager, QuestValidator questValidator) { _journalData = journalData; _questRegistry = questRegistry; @@ -47,6 +49,7 @@ internal sealed class QuestJournalComponent _pluginInterface = pluginInterface; _questController = questController; _commandManager = commandManager; + _questValidator = questValidator; } public void DrawQuests() @@ -95,7 +98,7 @@ internal sealed class QuestJournalComponent if (filter.Section.QuestCount == 0) return; - (int supported, int completed) = _sectionCounts.GetValueOrDefault(filter.Section); + (int available, int obtainable, int completed) = _sectionCounts.GetValueOrDefault(filter.Section, new()); ImGui.TableNextRow(); ImGui.TableNextColumn(); @@ -103,9 +106,9 @@ internal sealed class QuestJournalComponent bool open = ImGui.TreeNodeEx(filter.Section.Name, ImGuiTreeNodeFlags.SpanFullWidth); ImGui.TableNextColumn(); - DrawCount(supported, filter.Section.QuestCount); + DrawCount(available, filter.Section.QuestCount); ImGui.TableNextColumn(); - DrawCount(completed, filter.Section.QuestCount); + DrawCount(completed, obtainable); if (open) { @@ -121,7 +124,7 @@ internal sealed class QuestJournalComponent if (filter.Category.QuestCount == 0) return; - (int supported, int completed) = _categoryCounts.GetValueOrDefault(filter.Category); + (int available, int obtainable, int completed) = _categoryCounts.GetValueOrDefault(filter.Category, new()); ImGui.TableNextRow(); ImGui.TableNextColumn(); @@ -129,9 +132,9 @@ internal sealed class QuestJournalComponent bool open = ImGui.TreeNodeEx(filter.Category.Name, ImGuiTreeNodeFlags.SpanFullWidth); ImGui.TableNextColumn(); - DrawCount(supported, filter.Category.QuestCount); + DrawCount(available, filter.Category.QuestCount); ImGui.TableNextColumn(); - DrawCount(completed, filter.Category.QuestCount); + DrawCount(completed, obtainable); if (open) { @@ -147,7 +150,7 @@ internal sealed class QuestJournalComponent if (filter.Genre.QuestCount == 0) return; - (int supported, int completed) = _genreCounts.GetValueOrDefault(filter.Genre); + (int supported, int obtainable, int completed) = _genreCounts.GetValueOrDefault(filter.Genre, new()); ImGui.TableNextRow(); ImGui.TableNextColumn(); @@ -157,7 +160,7 @@ internal sealed class QuestJournalComponent ImGui.TableNextColumn(); DrawCount(supported, filter.Genre.QuestCount); ImGui.TableNextColumn(); - DrawCount(completed, filter.Genre.QuestCount); + DrawCount(completed, obtainable); if (open) { @@ -192,7 +195,8 @@ internal sealed class QuestJournalComponent bool openInQuestMap = _commandManager.Commands.TryGetValue("/questinfo", out var commandInfo); if (ImGui.MenuItem("View in Quest Map", questInfo.QuestId is QuestId && openInQuestMap)) { - _commandManager.DispatchCommand("/questinfo", questInfo.QuestId.ToString() ?? string.Empty, commandInfo!); + _commandManager.DispatchCommand("/questinfo", questInfo.QuestId.ToString() ?? string.Empty, + commandInfo!); } ImGui.EndPopup(); @@ -207,7 +211,19 @@ internal sealed class QuestJournalComponent } ImGui.SetCursorPosX(ImGui.GetCursorPosX() + spacing); - _uiUtils.ChecklistItem(string.Empty, quest is { Root.Disabled: false }); + + if (quest is { Root.Disabled: false }) + { + List issues = _questValidator.GetIssues(quest.Id); + if (issues.Any(x => x.Severity == EIssueSeverity.Error)) + _uiUtils.ChecklistItem(string.Empty, ImGuiColors.DalamudRed, FontAwesomeIcon.ExclamationTriangle); + else if (issues.Count > 0) + _uiUtils.ChecklistItem(string.Empty, ImGuiColors.ParsedBlue, FontAwesomeIcon.InfoCircle); + else + _uiUtils.ChecklistItem(string.Empty, true); + } + else + _uiUtils.ChecklistItem(string.Empty, false); ImGui.TableNextColumn(); var (color, icon, text) = _uiUtils.GetQuestStyle(questInfo.QuestId); @@ -219,12 +235,17 @@ internal sealed class QuestJournalComponent string len = 9999.ToString(CultureInfo.CurrentCulture); ImGui.PushFont(UiBuilder.MonoFont); - string text = - $"{count.ToString(CultureInfo.CurrentCulture).PadLeft(len.Length)} / {total.ToString(CultureInfo.CurrentCulture).PadLeft(len.Length)}"; - if (count == total) - ImGui.TextColored(ImGuiColors.ParsedGreen, text); + if (total == 0) + ImGui.TextColored(ImGuiColors.DalamudGrey, $"{"-".PadLeft(len.Length)} / {"-".PadLeft(len.Length)}"); else - ImGui.TextUnformatted(text); + { + string text = + $"{count.ToString(CultureInfo.CurrentCulture).PadLeft(len.Length)} / {total.ToString(CultureInfo.CurrentCulture).PadLeft(len.Length)}"; + if (count == total) + ImGui.TextColored(ImGuiColors.ParsedGreen, text); + else + ImGui.TextUnformatted(text); + } ImGui.PopFont(); } @@ -317,8 +338,9 @@ internal sealed class QuestJournalComponent { int available = genre.Quests.Count(x => _questRegistry.TryGetQuest(x.QuestId, out var quest) && !quest.Root.Disabled); + int obtainable = genre.Quests.Count(x => !_questFunctions.IsQuestUnobtainable(x.QuestId)); int completed = genre.Quests.Count(x => _questFunctions.IsQuestComplete(x.QuestId)); - _genreCounts[genre] = (available, completed); + _genreCounts[genre] = new(available, obtainable, completed); } foreach (var category in _journalData.Categories) @@ -328,8 +350,9 @@ internal sealed class QuestJournalComponent .Select(x => x.Value) .ToList(); int available = counts.Sum(x => x.Available); + int obtainable = counts.Sum(x => x.Obtainable); int completed = counts.Sum(x => x.Completed); - _categoryCounts[category] = (available, completed); + _categoryCounts[category] = new(available, obtainable, completed); } foreach (var section in _journalData.Sections) @@ -339,21 +362,22 @@ internal sealed class QuestJournalComponent .Select(x => x.Value) .ToList(); int available = counts.Sum(x => x.Available); + int obtainable = counts.Sum(x => x.Obtainable); int completed = counts.Sum(x => x.Completed); - _sectionCounts[section] = (available, completed); + _sectionCounts[section] = new(available, obtainable, completed); } } internal void ClearCounts() { foreach (var genreCount in _genreCounts.ToList()) - _genreCounts[genreCount.Key] = (genreCount.Value.Available, 0); + _genreCounts[genreCount.Key] = genreCount.Value with { Completed = 0 }; foreach (var categoryCount in _categoryCounts.ToList()) - _categoryCounts[categoryCount.Key] = (categoryCount.Value.Available, 0); + _categoryCounts[categoryCount.Key] = categoryCount.Value with { Completed = 0 }; foreach (var sectionCount in _sectionCounts.ToList()) - _sectionCounts[sectionCount.Key] = (sectionCount.Value.Available, 0); + _sectionCounts[sectionCount.Key] = sectionCount.Value with { Completed = 0 }; } private sealed record FilteredSection(JournalData.Section Section, List Categories); @@ -361,4 +385,6 @@ internal sealed class QuestJournalComponent private sealed record FilteredCategory(JournalData.Category Category, List Genres); private sealed record FilteredGenre(JournalData.Genre Genre, List Quests); + + private sealed record JournalCounts(int Available = 0, int Obtainable = 0, int Completed = 0); } diff --git a/Questionable/Windows/PriorityWindow.cs b/Questionable/Windows/PriorityWindow.cs new file mode 100644 index 00000000..08bd35e5 --- /dev/null +++ b/Questionable/Windows/PriorityWindow.cs @@ -0,0 +1,308 @@ +using System; +using System.Buffers.Text; +using System.Collections.Generic; +using System.Linq; +using System.Numerics; +using System.Text; +using Dalamud.Interface; +using Dalamud.Interface.Colors; +using Dalamud.Interface.Components; +using Dalamud.Plugin; +using Dalamud.Plugin.Services; +using ImGuiNET; +using LLib.ImGui; +using Questionable.Controller; +using Questionable.Functions; +using Questionable.Model; +using Questionable.Model.Questing; +using Questionable.Windows.QuestComponents; + +namespace Questionable.Windows; + +internal sealed class PriorityWindow : LWindow +{ + private const string ClipboardPrefix = "qst:v1:"; + private const char ClipboardSeparator = ';'; + + private readonly QuestController _questController; + private readonly QuestRegistry _questRegistry; + private readonly QuestFunctions _questFunctions; + private readonly QuestTooltipComponent _questTooltipComponent; + private readonly UiUtils _uiUtils; + private readonly IChatGui _chatGui; + private readonly IDalamudPluginInterface _pluginInterface; + + private string _searchString = string.Empty; + private ElementId? _draggedItem; + + public PriorityWindow(QuestController questController, QuestRegistry questRegistry, QuestFunctions questFunctions, + QuestTooltipComponent questTooltipComponent, UiUtils uiUtils, IChatGui chatGui, + IDalamudPluginInterface pluginInterface) + : base("Quest Priority###QuestionableQuestPriority") + { + _questController = questController; + _questRegistry = questRegistry; + _questFunctions = questFunctions; + _questTooltipComponent = questTooltipComponent; + _uiUtils = uiUtils; + _chatGui = chatGui; + _pluginInterface = pluginInterface; + + Size = new Vector2(400, 400); + SizeCondition = ImGuiCond.Once; + SizeConstraints = new WindowSizeConstraints + { + MinimumSize = new Vector2(400, 400), + MaximumSize = new Vector2(400, 999) + }; + } + + public override void Draw() + { + ImGui.Text("Quests to do first:"); + DrawQuestFilter(); + DrawQuestList(); + + List clipboardItems = ParseClipboardItems(); + ImGui.BeginDisabled(clipboardItems.Count == 0); + if (ImGuiComponents.IconButtonWithText(FontAwesomeIcon.Download, "Import from Clipboard")) + ImportFromClipboard(clipboardItems); + ImGui.EndDisabled(); + ImGui.SameLine(); + ImGui.BeginDisabled(_questController.ManualPriorityQuests.Count == 0); + if (ImGuiComponents.IconButtonWithText(FontAwesomeIcon.Upload, "Export to Clibpoard")) + ExportToClipboard(); + if (ImGuiComponents.IconButtonWithText(FontAwesomeIcon.Check, "Remove finished Quests")) + _questController.ManualPriorityQuests.RemoveAll(q => _questFunctions.IsQuestComplete(q.Id)); + ImGui.SameLine(); + if (ImGuiComponents.IconButtonWithText(FontAwesomeIcon.Trash, "Clear")) + _questController.ManualPriorityQuests.Clear(); + ImGui.EndDisabled(); + + ImGui.Spacing(); + + ImGui.Separator(); + ImGui.Spacing(); + ImGui.TextWrapped( + "If you have an active MSQ quest, Questionable will generally try to do:"); + ImGui.BulletText("'Priority' quests: class quests, ARR primals, ARR raids"); + ImGui.BulletText( + "Supported quests in your 'To-Do list'\n(quests from your Journal that are always on-screen)"); + ImGui.BulletText("MSQ quest (if available, unless it is marked as 'ignored'\nin your Journal)"); + ImGui.TextWrapped( + "If you don't have any active MSQ quest, it will always try to pick up the next quest in the MSQ first."); + } + + private void DrawQuestFilter() + { + ImGui.SetNextItemWidth(ImGui.GetContentRegionAvail().X); + if (ImGui.BeginCombo($"##QuestSelection", "Add Quest...", ImGuiComboFlags.HeightLarge)) + { + ImGui.SetNextItemWidth(ImGui.GetContentRegionAvail().X); + bool addFirst = ImGui.InputTextWithHint("", "Filter...", ref _searchString, 256, + ImGuiInputTextFlags.AutoSelectAll | ImGuiInputTextFlags.EnterReturnsTrue); + + IEnumerable foundQuests; + if (!string.IsNullOrEmpty(_searchString)) + { + foundQuests = _questRegistry.AllQuests + .Where(x => x.Id is not SatisfactionSupplyNpcId) + .Where(x => x.Info.Name.Contains(_searchString, StringComparison.CurrentCultureIgnoreCase)) + .Where(x => !_questFunctions.IsQuestUnobtainable(x.Id)); + } + else + { + foundQuests = _questRegistry.AllQuests.Where(x => _questFunctions.IsQuestAccepted(x.Id)); + } + + foreach (var quest in foundQuests) + { + if (quest.Info.IsMainScenarioQuest || _questController.ManualPriorityQuests.Any(x => x.Id == quest.Id)) + continue; + + bool addThis = ImGui.Selectable(quest.Info.Name); + if (addThis || addFirst) + { + _questController.ManualPriorityQuests.Add(quest); + + if (addFirst) + { + ImGui.CloseCurrentPopup(); + addFirst = false; + } + } + } + + ImGui.EndCombo(); + } + + ImGui.Spacing(); + } + + private void DrawQuestList() + { + List priorityQuests = _questController.ManualPriorityQuests; + Quest? itemToRemove = null; + Quest? itemToAdd = null; + int indexToAdd = 0; + + float width = ImGui.GetContentRegionAvail().X; + List<(Vector2 TopLeft, Vector2 BottomRight)> itemPositions = []; + + for (int i = 0; i < priorityQuests.Count; ++i) + { + Vector2 topLeft = ImGui.GetCursorScreenPos() + + new Vector2(0, -ImGui.GetStyle().ItemSpacing.Y / 2); + var quest = priorityQuests[i]; + ImGui.PushID($"Quest{quest.Id}"); + + var style = _uiUtils.GetQuestStyle(quest.Id); + bool hovered; + using (var _ = _pluginInterface.UiBuilder.IconFontFixedWidthHandle.Push()) + { + ImGui.AlignTextToFramePadding(); + ImGui.TextColored(style.Color, style.Icon.ToIconString()); + hovered = ImGui.IsItemHovered(); + } + + ImGui.SameLine(); + ImGui.AlignTextToFramePadding(); + ImGui.Text(quest.Info.Name); + hovered |= ImGui.IsItemHovered(); + + if (hovered) + _questTooltipComponent.Draw(quest.Info); + + if (priorityQuests.Count > 1) + { + ImGui.PushFont(UiBuilder.IconFont); + ImGui.SameLine(ImGui.GetContentRegionAvail().X + + ImGui.GetStyle().WindowPadding.X - + ImGui.CalcTextSize(FontAwesomeIcon.ArrowsUpDown.ToIconString()).X - + ImGui.CalcTextSize(FontAwesomeIcon.Times.ToIconString()).X - + ImGui.GetStyle().FramePadding.X * 4 - + ImGui.GetStyle().ItemSpacing.X); + ImGui.PopFont(); + + if (_draggedItem == quest.Id) + { + ImGuiComponents.IconButton("##Move", FontAwesomeIcon.ArrowsUpDown, + ImGui.ColorConvertU32ToFloat4(ImGui.GetColorU32(ImGuiCol.ButtonActive))); + } + else + ImGuiComponents.IconButton("##Move", FontAwesomeIcon.ArrowsUpDown); + + if (_draggedItem == null && ImGui.IsItemActive() && ImGui.IsMouseDragging(ImGuiMouseButton.Left)) + _draggedItem = quest.Id; + + ImGui.SameLine(); + } + else + { + ImGui.PushFont(UiBuilder.IconFont); + ImGui.SameLine(ImGui.GetContentRegionAvail().X + + ImGui.GetStyle().WindowPadding.X - + ImGui.CalcTextSize(FontAwesomeIcon.Times.ToIconString()).X - + ImGui.GetStyle().FramePadding.X * 2); + ImGui.PopFont(); + } + + if (ImGuiComponents.IconButton($"##Remove{i}", FontAwesomeIcon.Times)) + itemToRemove = quest; + + ImGui.PopID(); + + Vector2 bottomRight = new Vector2(topLeft.X + width, + ImGui.GetCursorScreenPos().Y - ImGui.GetStyle().ItemSpacing.Y + 2); + itemPositions.Add((topLeft, bottomRight)); + } + + if (!ImGui.IsMouseDragging(ImGuiMouseButton.Left)) + _draggedItem = null; + else if (_draggedItem != null) + { + var draggedItem = priorityQuests.Single(x => x.Id == _draggedItem); + int oldIndex = priorityQuests.IndexOf(draggedItem); + + var (topLeft, bottomRight) = itemPositions[oldIndex]; + ImGui.GetWindowDrawList().AddRect(topLeft, bottomRight, ImGui.GetColorU32(ImGuiColors.DalamudGrey), 3f, + ImDrawFlags.RoundCornersAll); + + int newIndex = itemPositions.FindIndex(x => ImGui.IsMouseHoveringRect(x.TopLeft, x.BottomRight, true)); + if (newIndex >= 0 && oldIndex != newIndex) + { + itemToAdd = priorityQuests.Single(x => x.Id == _draggedItem); + indexToAdd = newIndex; + } + } + + if (itemToRemove != null) + { + priorityQuests.Remove(itemToRemove); + } + + if (itemToAdd != null) + { + priorityQuests.Remove(itemToAdd); + priorityQuests.Insert(indexToAdd, itemToAdd); + } + } + + private List ParseClipboardItems() + { + List clipboardItems = new List(); + try + { + string? clipboardText = GetClipboardText(); + if (clipboardText != null && clipboardText.StartsWith(ClipboardPrefix, StringComparison.InvariantCulture)) + { + clipboardText = clipboardText.Substring(ClipboardPrefix.Length); + string text = Encoding.UTF8.GetString(Convert.FromBase64String(clipboardText)); + foreach (string part in text.Split(ClipboardSeparator)) + { + ElementId elementId = ElementId.FromString(part); + clipboardItems.Add(elementId); + } + } + } + catch (Exception) + { + clipboardItems.Clear(); + } + + return clipboardItems; + } + + private void ExportToClipboard() + { + string clipboardText = ClipboardPrefix + Convert.ToBase64String(Encoding.UTF8.GetBytes( + string.Join(ClipboardSeparator, _questController.ManualPriorityQuests.Select(x => x.Id.ToString())))); + ImGui.SetClipboardText(clipboardText); + _chatGui.Print("Copied quests to clipboard.", CommandHandler.MessageTag, CommandHandler.TagColor); + } + + private void ImportFromClipboard(List clipboardItems) + { + foreach (ElementId elementId in clipboardItems) + { + if (_questRegistry.TryGetQuest(elementId, out Quest? quest) && + !_questController.ManualPriorityQuests.Contains(quest)) + _questController.ManualPriorityQuests.Add(quest); + } + } + + /// + /// The default implementation for throws an NullReferenceException if the clipboard is empty, maybe also if it doesn't contain text. + /// + private unsafe string? GetClipboardText() + { + byte* ptr = ImGuiNative.igGetClipboardText(); + if (ptr == null) + return null; + + int byteCount = 0; + while (ptr[byteCount] != 0) + ++byteCount; + return Encoding.UTF8.GetString(ptr, byteCount); + } +} diff --git a/Questionable/Windows/QuestComponents/ActiveQuestComponent.cs b/Questionable/Windows/QuestComponents/ActiveQuestComponent.cs index 318b1f80..34beb090 100644 --- a/Questionable/Windows/QuestComponents/ActiveQuestComponent.cs +++ b/Questionable/Windows/QuestComponents/ActiveQuestComponent.cs @@ -31,6 +31,7 @@ internal sealed partial class ActiveQuestComponent private readonly ICommandManager _commandManager; private readonly Configuration _configuration; private readonly QuestRegistry _questRegistry; + private readonly PriorityWindow _priorityWindow; private readonly IChatGui _chatGui; public ActiveQuestComponent( @@ -42,6 +43,7 @@ internal sealed partial class ActiveQuestComponent ICommandManager commandManager, Configuration configuration, QuestRegistry questRegistry, + PriorityWindow priorityWindow, IChatGui chatGui) { _questController = questController; @@ -52,6 +54,7 @@ internal sealed partial class ActiveQuestComponent _commandManager = commandManager; _configuration = configuration; _questRegistry = questRegistry; + _priorityWindow = priorityWindow; _chatGui = chatGui; } @@ -81,7 +84,7 @@ internal sealed partial class ActiveQuestComponent if (!isMinimized) { bool colored = currentStep is - { InteractionType: EInteractionType.Instruction or EInteractionType.WaitForManualProgress }; + { InteractionType: EInteractionType.Instruction or EInteractionType.WaitForManualProgress or EInteractionType.Snipe }; if (colored) ImGui.PushStyleColor(ImGuiCol.Text, ImGuiColors.DalamudOrange); ImGui.TextUnformatted(currentStep?.Comment ?? @@ -111,6 +114,10 @@ internal sealed partial class ActiveQuestComponent _questController.Stop("Manual (no active quest)"); _gatheringController.Stop("Manual (no active quest)"); } + + ImGui.SameLine(); + if (ImGuiComponents.IconButton(FontAwesomeIcon.SortAmountDown)) + _priorityWindow.Toggle(); } } @@ -142,7 +149,8 @@ internal sealed partial class ActiveQuestComponent ImGui.SameLine(0); if (ImGui.IsItemHovered()) - ImGui.SetTooltip("This quest is loaded from your 'pluginConfigs\\Questionable\\Quests' directory.\nThis gets loaded even if Questionable ships with a newer/different version of the quest."); + ImGui.SetTooltip( + "This quest is loaded from your 'pluginConfigs\\Questionable\\Quests' directory.\nThis gets loaded even if Questionable ships with a newer/different version of the quest."); } ImGui.TextUnformatted( @@ -157,9 +165,10 @@ internal sealed partial class ActiveQuestComponent if (_configuration.Advanced.AdditionalStatusInformation && _questController.IsInterruptible()) { ImGui.SameLine(); - ImGui.PushFont(UiBuilder.IconFont); - ImGui.TextColored(ImGuiColors.DalamudYellow, FontAwesomeIcon.Pause.ToIconString()); - ImGui.PopFont(); + ImGui.TextColored(ImGuiColors.DalamudYellow, SeIconChar.Hyadelyn.ToIconString()); + if (ImGui.IsItemHovered()) + ImGui.SetTooltip( + "This quest sequence starts with a teleport to an Aetheryte.\nCertain priority quest (e.g. class quests) may be started/completed by the plugin prior to continuing with this quest."); } } @@ -168,7 +177,7 @@ internal sealed partial class ActiveQuestComponent { using var _ = ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.DalamudYellow); ImGui.TextUnformatted( - $"Next Quest: {Shorten(currentQuest.Quest.Info.Name)} / {currentQuest.Sequence} / {currentQuest.Step}"); + $"Next Quest: {Shorten(nextQuest.Quest.Info.Name)} / {nextQuest.Sequence} / {nextQuest.Step}"); } } } @@ -291,6 +300,10 @@ internal sealed partial class ActiveQuestComponent ImGui.PopStyleColor(); ImGui.EndDisabled(); + ImGui.SameLine(); + if (ImGuiComponents.IconButton(FontAwesomeIcon.SortAmountDown)) + _priorityWindow.Toggle(); + if (_commandManager.Commands.TryGetValue("/questinfo", out var commandInfo)) { ImGui.SameLine(); diff --git a/Questionable/Windows/QuestComponents/CreationUtilsComponent.cs b/Questionable/Windows/QuestComponents/CreationUtilsComponent.cs index 33fa831c..e7b6c861 100644 --- a/Questionable/Windows/QuestComponents/CreationUtilsComponent.cs +++ b/Questionable/Windows/QuestComponents/CreationUtilsComponent.cs @@ -4,6 +4,7 @@ using System.Globalization; using System.Numerics; using Dalamud.Game.ClientState.Conditions; using Dalamud.Game.ClientState.Objects; +using Dalamud.Game.ClientState.Objects.Types; using Dalamud.Game.Text; using Dalamud.Interface; using Dalamud.Interface.Colors; @@ -28,6 +29,7 @@ namespace Questionable.Windows.QuestComponents; internal sealed class CreationUtilsComponent { + private readonly QuestController _questController; private readonly MovementController _movementController; private readonly GameFunctions _gameFunctions; private readonly QuestFunctions _questFunctions; @@ -38,9 +40,11 @@ internal sealed class CreationUtilsComponent private readonly ITargetManager _targetManager; private readonly ICondition _condition; private readonly IGameGui _gameGui; + private readonly Configuration _configuration; private readonly ILogger _logger; public CreationUtilsComponent( + QuestController questController, MovementController movementController, GameFunctions gameFunctions, QuestFunctions questFunctions, @@ -51,8 +55,10 @@ internal sealed class CreationUtilsComponent ITargetManager targetManager, ICondition condition, IGameGui gameGui, + Configuration configuration, ILogger logger) { + _questController = questController; _movementController = movementController; _gameFunctions = gameFunctions; _questFunctions = questFunctions; @@ -63,10 +69,11 @@ internal sealed class CreationUtilsComponent _targetManager = targetManager; _condition = condition; _gameGui = gameGui; + _configuration = configuration; _logger = logger; } - public unsafe void Draw() + public void Draw() { Debug.Assert(_clientState.LocalPlayer != null, "_clientState.LocalPlayer != null"); @@ -79,194 +86,101 @@ internal sealed class CreationUtilsComponent ImGui.Text(SeIconChar.BotanistSprout.ToIconString()); } - var q = _questFunctions.GetCurrentQuest(); - ImGui.Text($"Current Quest: {q.CurrentQuest} → {q.Sequence}"); + if (_configuration.Advanced.AdditionalStatusInformation) + { + var q = _questFunctions.GetCurrentQuest(); + ImGui.Text($"Current Quest: {q.CurrentQuest} → {q.Sequence}"); + } #if false - var questManager = QuestManager.Instance(); - if (questManager != null) - { - for (int i = questManager->TrackedQuests.Length - 1; i >= 0; --i) + unsafe { + var questManager = QuestManager.Instance(); + if (questManager != null) { - var trackedQuest = questManager->TrackedQuests[i]; - switch (trackedQuest.QuestType) + for (int i = questManager->TrackedQuests.Length - 1; i >= 0; --i) { - default: - ImGui.Text($"Tracked quest {i}: {trackedQuest.QuestType}, {trackedQuest.Index}"); - break; + var trackedQuest = questManager->TrackedQuests[i]; + switch (trackedQuest.QuestType) + { + default: + ImGui.Text($"Tracked quest {i}: {trackedQuest.QuestType}, {trackedQuest.Index}"); + break; - case 1: - //_questRegistry.TryGetQuest(questManager->NormalQuests[trackedQuest.Index].QuestId, - // out var quest); - ImGui.Text( - $"Quest: {questManager->NormalQuests[trackedQuest.Index].QuestId}, {trackedQuest.Index}"); - break; + case 1: + //_questRegistry.TryGetQuest(questManager->NormalQuests[trackedQuest.Index].QuestId, + // out var quest); + ImGui.Text( + $"Quest: {questManager->NormalQuests[trackedQuest.Index].QuestId}, {trackedQuest.Index}"); + break; - case 2: - ImGui.Text($"Leve: {questManager->LeveQuests[trackedQuest.Index].LeveId}, {trackedQuest.Index}"); - break; + case 2: + ImGui.Text($"Leve: {questManager->LeveQuests[trackedQuest.Index].LeveId}, {trackedQuest.Index}"); + break; + } } } } #endif #if false - var director = UIState.Instance()->DirectorTodo.Director; - if (director != null) + unsafe { - ImGui.Text($"Director: {director->ContentId}"); - ImGui.Text($"Seq: {director->Sequence}"); - ImGui.Text($"Ico: {director->IconId}"); - if (director->EventHandlerInfo != null) + var questManager = QuestManager.Instance(); + if (questManager != null) { - ImGui.Text($" EHI CI: {director->EventHandlerInfo->EventId.ContentId}"); - ImGui.Text($" EHI EI: {director->EventHandlerInfo->EventId.Id}"); - ImGui.Text($" EHI EEI: {director->EventHandlerInfo->EventId.EntryId}"); - ImGui.Text($" EHI F: {director->EventHandlerInfo->Flags}"); + for (int i = 0; i < questManager->DailyQuests.Length; ++i) + { + var dailyQuest = questManager->DailyQuests[i]; + ImGui.Text($"Daily Quest {i}: {dailyQuest.QuestId}, {dailyQuest.IsCompleted}"); + } + } + } +#endif + +#if false + unsafe + { + var director = UIState.Instance()->DirectorTodo.Director; + if (director != null) + { + ImGui.Text($"Director: {director->ContentId}"); + ImGui.Text($"Seq: {director->Sequence}"); + ImGui.Text($"Ico: {director->IconId}"); + if (director->EventHandlerInfo != null) + { + ImGui.Text($" EHI CI: {director->Info.EventId.ContentId}"); + ImGui.Text($" EHI EI: {director->Info.EventId.Id}"); + ImGui.Text($" EHI EEI: {director->Info.EventId.EntryId}"); + ImGui.Text($" EHI F: {director->Info.Flags}"); + } + } + } +#endif + +#if false + if (_configuration.Advanced.AdditionalStatusInformation) + { + unsafe + { + var actionManager = ActionManager.Instance(); + ImGui.Text( + $"A1: {actionManager->CastActionId} ({actionManager->LastUsedActionSequence} → {actionManager->LastHandledActionSequence})"); + ImGui.Text($"A2: {actionManager->CastTimeElapsed} / {actionManager->CastTimeTotal}"); + ImGui.Text($"{_questController.TaskQueue.CurrentTaskExecutor?.ProgressContext}"); } } #endif if (_targetManager.Target != null) { - ImGui.Separator(); - ImGui.Text(string.Create(CultureInfo.InvariantCulture, - $"Target: {_targetManager.Target.Name} ({_targetManager.Target.ObjectKind}; {_targetManager.Target.DataId})")); - - GameObject* gameObject = (GameObject*)_targetManager.Target.Address; - ImGui.Text(string.Create(CultureInfo.InvariantCulture, - $"Distance: {(_targetManager.Target.Position - _clientState.LocalPlayer.Position).Length():F2}")); + DrawTargetDetails(_targetManager.Target); + DrawInteractionButtons(_targetManager.Target); ImGui.SameLine(); - - float verticalDistance = _targetManager.Target.Position.Y - _clientState.LocalPlayer.Position.Y; - string verticalDistanceText = string.Create(CultureInfo.InvariantCulture, $"Y: {verticalDistance:F2}"); - if (Math.Abs(verticalDistance) >= MovementController.DefaultVerticalInteractionDistance) - ImGui.TextColored(ImGuiColors.DalamudOrange, verticalDistanceText); - else - ImGui.Text(verticalDistanceText); - - ImGui.SameLine(); - ImGui.Text($"QM: {gameObject->NamePlateIconId}"); - - ImGui.BeginDisabled(!_movementController.IsNavmeshReady || _gameFunctions.IsOccupied()); - if (!_movementController.IsPathfinding) - { - if (ImGuiComponents.IconButtonWithText(FontAwesomeIcon.Bullseye, "To Target")) - { - _movementController.NavigateTo(EMovementType.DebugWindow, _targetManager.Target.DataId, - _targetManager.Target.Position, - fly: _condition[ConditionFlag.Mounted] && _gameFunctions.IsFlyingUnlockedInCurrentZone(), - sprint: true); - } - } - else - { - if (ImGui.Button("Cancel pathfinding")) - _movementController.ResetPathfinding(); - } - - ImGui.EndDisabled(); - - ImGui.SameLine(); - ImGui.BeginDisabled(!_questData.IsIssuerOfAnyQuest(_targetManager.Target.DataId)); - bool showQuests = ImGuiComponents.IconButton(FontAwesomeIcon.MapMarkerAlt); - if (ImGui.IsItemHovered()) - ImGui.SetTooltip("Show all Quests starting with your current target."); - if (showQuests) - _questSelectionWindow.OpenForTarget(_targetManager.Target); - - ImGui.EndDisabled(); - - ImGui.BeginDisabled(_gameFunctions.IsOccupied()); - ImGui.SameLine(); - bool interact = ImGuiComponents.IconButton(FontAwesomeIcon.MousePointer); - if (ImGui.IsItemHovered()) - ImGui.SetTooltip("Interact with your current target."); - if (interact) - { - ulong result = TargetSystem.Instance()->InteractWithObject( - (GameObject*)_targetManager.Target.Address, false); - _logger.LogInformation("XXXXX Interaction Result: {Result}", result); - } - ImGui.EndDisabled(); - ImGui.SameLine(); - - bool copy = ImGuiComponents.IconButton(FontAwesomeIcon.Copy); - if (ImGui.IsItemHovered()) - ImGui.SetTooltip( - "Left click: Copy target position as JSON.\nRight click: Copy target position as C# code."); - if (copy) - { - var target = _targetManager.Target; - if (target.ObjectKind == ObjectKind.GatheringPoint) - { - ImGui.SetClipboardText($$""" - "DataId": {{target.DataId}}, - "Position": { - "X": {{target.Position.X.ToString(CultureInfo.InvariantCulture)}}, - "Y": {{target.Position.Y.ToString(CultureInfo.InvariantCulture)}}, - "Z": {{target.Position.Z.ToString(CultureInfo.InvariantCulture)}} - } - """); - } - else - { - string interactionType = gameObject->NamePlateIconId switch - { - 71201 or 71211 or 71221 or 71231 or 71341 or 71351 => "AcceptQuest", - 71202 or 71212 or 71222 or 71232 or 71342 or 71352 => "AcceptQuest", // repeatable - 71205 or 71215 or 71225 or 71235 or 71345 or 71355 => "CompleteQuest", - _ => "Interact", - }; - ImGui.SetClipboardText($$""" - "DataId": {{target.DataId}}, - "Position": { - "X": {{target.Position.X.ToString(CultureInfo.InvariantCulture)}}, - "Y": {{target.Position.Y.ToString(CultureInfo.InvariantCulture)}}, - "Z": {{target.Position.Z.ToString(CultureInfo.InvariantCulture)}} - }, - "TerritoryId": {{_clientState.TerritoryType}}, - "InteractionType": "{{interactionType}}" - """); - } - } - else if (ImGui.IsItemClicked(ImGuiMouseButton.Right)) - { - if (_targetManager.Target.ObjectKind == ObjectKind.Aetheryte) - { - EAetheryteLocation location = (EAetheryteLocation)_targetManager.Target.DataId; - ImGui.SetClipboardText(string.Create(CultureInfo.InvariantCulture, - $"{{EAetheryteLocation.{location}, new({_targetManager.Target.Position.X}f, {_targetManager.Target.Position.Y}f, {_targetManager.Target.Position.Z}f)}},")); - } - else - ImGui.SetClipboardText(string.Create(CultureInfo.InvariantCulture, - $"new({_targetManager.Target.Position.X}f, {_targetManager.Target.Position.Y}f, {_targetManager.Target.Position.Z}f)")); - } + DrawCopyButton(_targetManager.Target); } else { - bool copy = ImGuiComponents.IconButton(FontAwesomeIcon.Copy); - if (ImGui.IsItemHovered()) - ImGui.SetTooltip( - "Left click: Copy your position as JSON.\nRight click: Copy your position as C# code."); - if (copy) - { - ImGui.SetClipboardText($$""" - "Position": { - "X": {{_clientState.LocalPlayer.Position.X.ToString(CultureInfo.InvariantCulture)}}, - "Y": {{_clientState.LocalPlayer.Position.Y.ToString(CultureInfo.InvariantCulture)}}, - "Z": {{_clientState.LocalPlayer.Position.Z.ToString(CultureInfo.InvariantCulture)}} - }, - "TerritoryId": {{_clientState.TerritoryType}}, - "InteractionType": "" - """); - } - else if (ImGui.IsItemClicked(ImGuiMouseButton.Right)) - { - Vector3 position = _clientState.LocalPlayer!.Position; - ImGui.SetClipboardText(string.Create(CultureInfo.InvariantCulture, - $"new({position.X}f, {position.Y}f, {position.Z}f)")); - } + DrawCopyButton(); } ulong hoveredItemId = _gameGui.HoveredItem; @@ -276,4 +190,160 @@ internal sealed class CreationUtilsComponent ImGui.Text($"Hovered Item: {hoveredItemId}"); } } + + private unsafe void DrawTargetDetails(IGameObject target) + { + ImGui.Separator(); + ImGui.Text(string.Create(CultureInfo.InvariantCulture, + $"Target: {target.Name} ({target.ObjectKind}; {target.DataId})")); + + if (_clientState.LocalPlayer != null) + { + ImGui.Text(string.Create(CultureInfo.InvariantCulture, + $"Distance: {(target.Position - _clientState.LocalPlayer.Position).Length():F2}")); + ImGui.SameLine(); + + float verticalDistance = target.Position.Y - _clientState.LocalPlayer.Position.Y; + string verticalDistanceText = string.Create(CultureInfo.InvariantCulture, $"Y: {verticalDistance:F2}"); + if (Math.Abs(verticalDistance) >= MovementController.DefaultVerticalInteractionDistance) + ImGui.TextColored(ImGuiColors.DalamudOrange, verticalDistanceText); + else + ImGui.Text(verticalDistanceText); + + ImGui.SameLine(); + } + + GameObject* gameObject = (GameObject*)target.Address; + ImGui.Text($"QM: {gameObject->NamePlateIconId}"); + } + + private unsafe void DrawInteractionButtons(IGameObject target) + { + ImGui.BeginDisabled(!_movementController.IsNavmeshReady || _gameFunctions.IsOccupied()); + if (!_movementController.IsPathfinding) + { + if (ImGuiComponents.IconButtonWithText(FontAwesomeIcon.Bullseye, "To Target")) + { + _movementController.NavigateTo(EMovementType.DebugWindow, target.DataId, + target.Position, + fly: _condition[ConditionFlag.Mounted] && _gameFunctions.IsFlyingUnlockedInCurrentZone(), + sprint: true); + } + } + else + { + if (ImGui.Button("Cancel pathfinding")) + _movementController.ResetPathfinding(); + } + + ImGui.EndDisabled(); + + ImGui.SameLine(); + ImGui.BeginDisabled(!_questData.IsIssuerOfAnyQuest(target.DataId)); + bool showQuests = ImGuiComponents.IconButton(FontAwesomeIcon.MapMarkerAlt); + if (ImGui.IsItemHovered()) + ImGui.SetTooltip("Show all Quests starting with your current target."); + if (showQuests) + _questSelectionWindow.OpenForTarget(_targetManager.Target); + + ImGui.EndDisabled(); + + ImGui.BeginDisabled(_gameFunctions.IsOccupied()); + ImGui.SameLine(); + bool interact = ImGuiComponents.IconButton(FontAwesomeIcon.MousePointer); + if (ImGui.IsItemHovered()) + ImGui.SetTooltip("Interact with your current target."); + if (interact) + { + ulong result = TargetSystem.Instance()->InteractWithObject( + (GameObject*)target.Address, false); + _logger.LogInformation("XXXXX Interaction Result: {Result}", result); + } + + ImGui.EndDisabled(); + } + + private unsafe void DrawCopyButton(IGameObject target) + { + GameObject* gameObject = (GameObject*)target.Address; + bool copy = ImGuiComponents.IconButton(FontAwesomeIcon.Copy); + if (ImGui.IsItemHovered()) + ImGui.SetTooltip( + "Left click: Copy target position as JSON.\nRight click: Copy target position as C# code."); + if (copy) + { + if (target.ObjectKind == ObjectKind.GatheringPoint) + { + ImGui.SetClipboardText($$""" + "DataId": {{target.DataId}}, + "Position": { + "X": {{target.Position.X.ToString(CultureInfo.InvariantCulture)}}, + "Y": {{target.Position.Y.ToString(CultureInfo.InvariantCulture)}}, + "Z": {{target.Position.Z.ToString(CultureInfo.InvariantCulture)}} + } + """); + } + else + { + string interactionType = gameObject->NamePlateIconId switch + { + 71201 or 71211 or 71221 or 71231 or 71341 or 71351 => "AcceptQuest", + 71202 or 71212 or 71222 or 71232 or 71342 or 71352 => "AcceptQuest", // repeatable + 71205 or 71215 or 71225 or 71235 or 71345 or 71355 => "CompleteQuest", + _ => "Interact", + }; + ImGui.SetClipboardText($$""" + "DataId": {{target.DataId}}, + "Position": { + "X": {{target.Position.X.ToString(CultureInfo.InvariantCulture)}}, + "Y": {{target.Position.Y.ToString(CultureInfo.InvariantCulture)}}, + "Z": {{target.Position.Z.ToString(CultureInfo.InvariantCulture)}} + }, + "TerritoryId": {{_clientState.TerritoryType}}, + "InteractionType": "{{interactionType}}" + """); + } + } + else if (ImGui.IsItemClicked(ImGuiMouseButton.Right)) + { + if (target.ObjectKind == ObjectKind.Aetheryte) + { + EAetheryteLocation location = (EAetheryteLocation)target.DataId; + ImGui.SetClipboardText(string.Create(CultureInfo.InvariantCulture, + $"{{EAetheryteLocation.{location}, new({target.Position.X}f, {target.Position.Y}f, {target.Position.Z}f)}},")); + } + else + ImGui.SetClipboardText(string.Create(CultureInfo.InvariantCulture, + $"new({target.Position.X}f, {target.Position.Y}f, {target.Position.Z}f)")); + } + } + + private void DrawCopyButton() + { + if (_clientState.LocalPlayer == null) + return; + + bool copy = ImGuiComponents.IconButton(FontAwesomeIcon.Copy); + if (ImGui.IsItemHovered()) + ImGui.SetTooltip( + "Left click: Copy your position as JSON.\nRight click: Copy your position as C# code."); + if (copy) + { + ImGui.SetClipboardText($$""" + "Position": { + "X": {{_clientState.LocalPlayer.Position.X.ToString(CultureInfo.InvariantCulture)}}, + "Y": {{_clientState.LocalPlayer.Position.Y.ToString(CultureInfo.InvariantCulture)}}, + "Z": {{_clientState.LocalPlayer.Position.Z.ToString(CultureInfo.InvariantCulture)}} + }, + "TerritoryId": {{_clientState.TerritoryType}}, + "InteractionType": "" + """); + } + else if (ImGui.IsItemClicked(ImGuiMouseButton.Right)) + { + Vector3 position = _clientState.LocalPlayer!.Position; + ImGui.SetClipboardText(string.Create(CultureInfo.InvariantCulture, + $"new({position.X}f, {position.Y}f, {position.Z}f)")); + } + } } diff --git a/Questionable/Windows/QuestComponents/EventInfoComponent.cs b/Questionable/Windows/QuestComponents/EventInfoComponent.cs index 12e3f497..d85e1f70 100644 --- a/Questionable/Windows/QuestComponents/EventInfoComponent.cs +++ b/Questionable/Windows/QuestComponents/EventInfoComponent.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Diagnostics.CodeAnalysis; using System.Globalization; using System.Linq; using Dalamud.Interface; @@ -18,10 +19,9 @@ namespace Questionable.Windows.QuestComponents; internal sealed class EventInfoComponent { + [SuppressMessage("ReSharper", "CollectionNeverUpdated.Local")] private readonly List _eventQuests = [ - new EventQuest("Moonfire Faire", [new(5182), new(5183)], - new DateTime(new DateOnly(2024, 8, 26), new TimeOnly(14, 59), DateTimeKind.Utc)), ]; private readonly QuestData _questData; @@ -47,6 +47,12 @@ internal sealed class EventInfoComponent _pluginInterface = pluginInterface; } + [SuppressMessage("ReSharper", "UnusedMember.Local")] + private static DateTime AtDailyReset(DateOnly date) + { + return new DateTime(date, new TimeOnly(14, 59), DateTimeKind.Utc); + } + public bool ShouldDraw => _configuration.General.ShowIncompleteSeasonalEvents && _eventQuests.Any(IsIncomplete); public void Draw() @@ -75,10 +81,10 @@ internal sealed class EventInfoComponent width -= ImGui.CalcTextSize(FontAwesomeIcon.Check.ToIconString()).X; List startableQuests = eventQuest.QuestIds.Where(x => - _questRegistry.IsKnownQuest(x) && - _questFunctions.IsReadyToAcceptQuest(x) && - x != _questController.StartedQuest?.Quest.Id && - x != _questController.NextQuest?.Quest.Id) + _questRegistry.IsKnownQuest(x) && + _questFunctions.IsReadyToAcceptQuest(x) && + x != _questController.StartedQuest?.Quest.Id && + x != _questController.NextQuest?.Quest.Id) .ToList(); if (startableQuests.Count == 0) width = 0; diff --git a/Questionable/Windows/QuestComponents/QuestTooltipComponent.cs b/Questionable/Windows/QuestComponents/QuestTooltipComponent.cs index d181d45a..3f426f6c 100644 --- a/Questionable/Windows/QuestComponents/QuestTooltipComponent.cs +++ b/Questionable/Windows/QuestComponents/QuestTooltipComponent.cs @@ -8,7 +8,6 @@ using Questionable.Controller; using Questionable.Data; using Questionable.Functions; using Questionable.Model; -using Questionable.Model.Questing; namespace Questionable.Windows.QuestComponents; @@ -19,55 +18,52 @@ internal sealed class QuestTooltipComponent private readonly TerritoryData _territoryData; private readonly QuestFunctions _questFunctions; private readonly UiUtils _uiUtils; + private readonly Configuration _configuration; public QuestTooltipComponent( QuestRegistry questRegistry, QuestData questData, TerritoryData territoryData, QuestFunctions questFunctions, - UiUtils uiUtils) + UiUtils uiUtils, + Configuration configuration) { _questRegistry = questRegistry; _questData = questData; _territoryData = territoryData; _questFunctions = questFunctions; _uiUtils = uiUtils; + _configuration = configuration; } - public void Draw(IQuestInfo quest) - { - if (quest is QuestInfo questInfo) - Draw(questInfo); - } - - public void Draw(QuestInfo quest) + public void Draw(IQuestInfo questInfo) { using var tooltip = ImRaii.Tooltip(); if (tooltip) { - ImGui.Text($"{SeIconChar.LevelEn.ToIconString()}{quest.Level}"); + ImGui.Text($"{SeIconChar.LevelEn.ToIconString()}{questInfo.Level}"); ImGui.SameLine(); - var (color, _, tooltipText) = _uiUtils.GetQuestStyle(quest.QuestId); + var (color, _, tooltipText) = _uiUtils.GetQuestStyle(questInfo.QuestId); ImGui.TextColored(color, tooltipText); - if (quest.IsRepeatable) + if (questInfo.IsRepeatable) { ImGui.SameLine(); ImGui.TextUnformatted("Repeatable"); } - if (quest.CompletesInstantly) + if (questInfo is QuestInfo { CompletesInstantly: true }) { ImGui.SameLine(); ImGui.TextUnformatted("Instant"); } - if (_questRegistry.TryGetQuest(quest.QuestId, out Quest? knownQuest)) + if (_questRegistry.TryGetQuest(questInfo.QuestId, out Quest? quest)) { - if (knownQuest.Root.Author.Count == 1) - ImGui.Text($"Author: {knownQuest.Root.Author[0]}"); + if (quest.Root.Author.Count == 1) + ImGui.Text($"Author: {quest.Root.Author[0]}"); else - ImGui.Text($"Authors: {string.Join(", ", knownQuest.Root.Author)}"); + ImGui.Text($"Authors: {string.Join(", ", quest.Root.Author)}"); } else { @@ -75,43 +71,45 @@ internal sealed class QuestTooltipComponent ImGui.TextUnformatted("NoQuestPath"); } - DrawQuestUnlocks(quest, 0); + DrawQuestUnlocks(questInfo, 0); } } - private void DrawQuestUnlocks(QuestInfo quest, int counter) + private void DrawQuestUnlocks(IQuestInfo questInfo, int counter) { if (counter >= 10) return; - if (counter != 0 && quest.IsMainScenarioQuest) + if (counter != 0 && questInfo.IsMainScenarioQuest) return; if (counter > 0) ImGui.Indent(); - if (quest.PreviousQuests.Count > 0) + if (questInfo.PreviousQuests.Count > 0) { if (counter == 0) ImGui.Separator(); - if (quest.PreviousQuests.Count > 1) + if (questInfo.PreviousQuests.Count > 1) { - if (quest.PreviousQuestJoin == QuestInfo.QuestJoin.All) + if (questInfo.PreviousQuestJoin == EQuestJoin.All) ImGui.Text("Requires all:"); - else if (quest.PreviousQuestJoin == QuestInfo.QuestJoin.AtLeastOne) + else if (questInfo.PreviousQuestJoin == EQuestJoin.AtLeastOne) ImGui.Text("Requires one:"); } - foreach (var q in quest.PreviousQuests) + foreach (var q in questInfo.PreviousQuests) { - if (_questData.TryGetQuestInfo(q, out var qInfo)) + if (_questData.TryGetQuestInfo(q.QuestId, out var qInfo)) { - var (iconColor, icon, _) = _uiUtils.GetQuestStyle(q); + var (iconColor, icon, _) = _uiUtils.GetQuestStyle(q.QuestId); if (!_questRegistry.IsKnownQuest(qInfo.QuestId)) iconColor = ImGuiColors.DalamudGrey; - _uiUtils.ChecklistItem(FormatQuestUnlockName(qInfo), iconColor, icon); + _uiUtils.ChecklistItem( + FormatQuestUnlockName(qInfo, + _questFunctions.IsQuestComplete(q.QuestId) ? byte.MinValue : q.Sequence), iconColor, icon); if (qInfo is QuestInfo qstInfo && (counter <= 2 || icon != FontAwesomeIcon.Check)) DrawQuestUnlocks(qstInfo, counter + 1); @@ -119,80 +117,89 @@ internal sealed class QuestTooltipComponent else { using var _ = ImRaii.Disabled(); - _uiUtils.ChecklistItem($"Unknown Quest ({q})", ImGuiColors.DalamudGrey, FontAwesomeIcon.Question); + _uiUtils.ChecklistItem($"Unknown Quest ({q.QuestId})", ImGuiColors.DalamudGrey, FontAwesomeIcon.Question); } } } - if (counter == 0 && quest.QuestLocks.Count > 0) + if (questInfo is QuestInfo actualQuestInfo) { - ImGui.Separator(); - if (quest.QuestLocks.Count > 1) + if (counter == 0 && actualQuestInfo.QuestLocks.Count > 0) { - if (quest.QuestLockJoin == QuestInfo.QuestJoin.All) - ImGui.Text("Blocked by (if all completed):"); - else if (quest.QuestLockJoin == QuestInfo.QuestJoin.AtLeastOne) - ImGui.Text("Blocked by (if at least completed):"); + ImGui.Separator(); + if (actualQuestInfo.QuestLocks.Count > 1) + { + if (actualQuestInfo.QuestLockJoin == EQuestJoin.All) + ImGui.Text("Blocked by (if all completed):"); + else if (actualQuestInfo.QuestLockJoin == EQuestJoin.AtLeastOne) + ImGui.Text("Blocked by (if at least completed):"); + } + else + ImGui.Text("Blocked by (if completed):"); + + foreach (var q in actualQuestInfo.QuestLocks) + { + var qInfo = _questData.GetQuestInfo(q); + var (iconColor, icon, _) = _uiUtils.GetQuestStyle(q); + if (!_questRegistry.IsKnownQuest(qInfo.QuestId)) + iconColor = ImGuiColors.DalamudGrey; + + _uiUtils.ChecklistItem(FormatQuestUnlockName(qInfo), iconColor, icon); + } } - else - ImGui.Text("Blocked by (if completed):"); - foreach (var q in quest.QuestLocks) + if (counter == 0 && actualQuestInfo.PreviousInstanceContent.Count > 0) { - var qInfo = _questData.GetQuestInfo(q); - var (iconColor, icon, _) = _uiUtils.GetQuestStyle(q); - if (!_questRegistry.IsKnownQuest(qInfo.QuestId)) - iconColor = ImGuiColors.DalamudGrey; + ImGui.Separator(); + if (actualQuestInfo.PreviousInstanceContent.Count > 1) + { + if (questInfo.PreviousQuestJoin == EQuestJoin.All) + ImGui.Text("Requires all:"); + else if (questInfo.PreviousQuestJoin == EQuestJoin.AtLeastOne) + ImGui.Text("Requires one:"); + } + else + ImGui.Text("Requires:"); - _uiUtils.ChecklistItem(FormatQuestUnlockName(qInfo), iconColor, icon); + foreach (var instanceId in actualQuestInfo.PreviousInstanceContent) + { + string instanceName = _territoryData.GetInstanceName(instanceId) ?? "?"; + var (iconColor, icon) = UiUtils.GetInstanceStyle(instanceId); + _uiUtils.ChecklistItem(instanceName, iconColor, icon); + } } - } - if (counter == 0 && quest.PreviousInstanceContent.Count > 0) - { - ImGui.Separator(); - if (quest.PreviousInstanceContent.Count > 1) + if (counter == 0 && actualQuestInfo.GrandCompany != GrandCompany.None) { - if (quest.PreviousQuestJoin == QuestInfo.QuestJoin.All) - ImGui.Text("Requires all:"); - else if (quest.PreviousQuestJoin == QuestInfo.QuestJoin.AtLeastOne) - ImGui.Text("Requires one:"); + ImGui.Separator(); + string gcName = actualQuestInfo.GrandCompany switch + { + GrandCompany.Maelstrom => "Maelstrom", + GrandCompany.TwinAdder => "Twin Adder", + GrandCompany.ImmortalFlames => "Immortal Flames", + _ => "None", + }; + + GrandCompany currentGrandCompany = _questFunctions.GetGrandCompany(); + _uiUtils.ChecklistItem($"Grand Company: {gcName}", actualQuestInfo.GrandCompany == currentGrandCompany); } - else - ImGui.Text("Requires:"); - - foreach (var instanceId in quest.PreviousInstanceContent) - { - string instanceName = _territoryData.GetInstanceName(instanceId) ?? "?"; - var (iconColor, icon) = UiUtils.GetInstanceStyle(instanceId); - _uiUtils.ChecklistItem(instanceName, iconColor, icon); - } - } - - if (counter == 0 && quest.GrandCompany != GrandCompany.None) - { - ImGui.Separator(); - string gcName = quest.GrandCompany switch - { - GrandCompany.Maelstrom => "Maelstrom", - GrandCompany.TwinAdder => "Twin Adder", - GrandCompany.ImmortalFlames => "Immortal Flames", - _ => "None", - }; - - GrandCompany currentGrandCompany = ~_questFunctions.GetGrandCompany(); - _uiUtils.ChecklistItem($"Grand Company: {gcName}", quest.GrandCompany == currentGrandCompany); } if (counter > 0) ImGui.Unindent(); } - private static string FormatQuestUnlockName(IQuestInfo questInfo) + private string FormatQuestUnlockName(IQuestInfo questInfo, byte sequence = 0) { + string name = questInfo.Name; + if (_configuration.Advanced.AdditionalStatusInformation && sequence != 0) + name += $" {SeIconChar.ItemLevel.ToIconString()}"; + if (questInfo.IsMainScenarioQuest) - return $"{questInfo.Name} ({questInfo.QuestId}, MSQ)"; + name += $" ({questInfo.QuestId}, MSQ)"; else - return $"{questInfo.Name} ({questInfo.QuestId})"; + name += $" ({questInfo.QuestId})"; + + return name; } } diff --git a/Questionable/Windows/QuestComponents/QuickAccessButtonsComponent.cs b/Questionable/Windows/QuestComponents/QuickAccessButtonsComponent.cs index 6704b594..6093686a 100644 --- a/Questionable/Windows/QuestComponents/QuickAccessButtonsComponent.cs +++ b/Questionable/Windows/QuestComponents/QuickAccessButtonsComponent.cs @@ -7,6 +7,7 @@ using Dalamud.Interface.Colors; using Dalamud.Interface.Components; using Dalamud.Interface.Utility; using Dalamud.Interface.Utility.Raii; +using Dalamud.Plugin; using Dalamud.Plugin.Services; using FFXIVClientStructs.FFXIV.Client.UI.Agent; using ImGuiNET; @@ -28,6 +29,7 @@ internal sealed class QuickAccessButtonsComponent private readonly IClientState _clientState; private readonly ICondition _condition; private readonly ICommandManager _commandManager; + private readonly IDalamudPluginInterface _pluginInterface; public QuickAccessButtonsComponent( MovementController movementController, @@ -39,7 +41,8 @@ internal sealed class QuickAccessButtonsComponent JournalProgressWindow journalProgressWindow, IClientState clientState, ICondition condition, - ICommandManager commandManager) + ICommandManager commandManager, + IDalamudPluginInterface pluginInterface) { _movementController = movementController; _gameFunctions = gameFunctions; @@ -51,6 +54,7 @@ internal sealed class QuickAccessButtonsComponent _clientState = clientState; _condition = condition; _commandManager = commandManager; + _pluginInterface = pluginInterface; } public event EventHandler? Reload; @@ -109,12 +113,14 @@ internal sealed class QuickAccessButtonsComponent int partsToRender = errorCount == 0 || infoCount == 0 ? 1 : 2; using var id = ImRaii.PushId("validationissues"); - ImGui.PushFont(UiBuilder.IconFont); - var icon1 = FontAwesomeIcon.TimesCircle; + var icon1 = FontAwesomeIcon.ExclamationTriangle; var icon2 = FontAwesomeIcon.InfoCircle; - Vector2 iconSize1 = errorCount > 0 ? ImGui.CalcTextSize(icon1.ToIconString()) : Vector2.Zero; - Vector2 iconSize2 = infoCount > 0 ? ImGui.CalcTextSize(icon2.ToIconString()) : Vector2.Zero; - ImGui.PopFont(); + Vector2 iconSize1, iconSize2; + using (var _ = _pluginInterface.UiBuilder.IconFontFixedWidthHandle.Push()) + { + iconSize1 = errorCount > 0 ? ImGui.CalcTextSize(icon1.ToIconString()) : Vector2.Zero; + iconSize2 = infoCount > 0 ? ImGui.CalcTextSize(icon2.ToIconString()) : Vector2.Zero; + } string text1 = errorCount > 0 ? errorCount.ToString(CultureInfo.InvariantCulture) : string.Empty; string text2 = infoCount > 0 ? infoCount.ToString(CultureInfo.InvariantCulture) : string.Empty; @@ -136,9 +142,11 @@ internal sealed class QuickAccessButtonsComponent cursor.Y + ImGui.GetStyle().FramePadding.Y); if (errorCount > 0) { - ImGui.PushFont(UiBuilder.IconFont); - dl.AddText(position, ImGui.GetColorU32(ImGuiColors.DalamudRed), icon1.ToIconString()); - ImGui.PopFont(); + using (var _ = _pluginInterface.UiBuilder.IconFontFixedWidthHandle.Push()) + { + dl.AddText(position, ImGui.GetColorU32(ImGuiColors.DalamudRed), icon1.ToIconString()); + } + position = position with { X = position.X + iconSize1.X + iconPadding }; // Draw the text on the window drawlist @@ -148,9 +156,11 @@ internal sealed class QuickAccessButtonsComponent if (infoCount > 0) { - ImGui.PushFont(UiBuilder.IconFont); - dl.AddText(position, ImGui.GetColorU32(ImGuiColors.ParsedBlue), icon2.ToIconString()); - ImGui.PopFont(); + using (var _ = _pluginInterface.UiBuilder.IconFontFixedWidthHandle.Push()) + { + dl.AddText(position, ImGui.GetColorU32(ImGuiColors.ParsedBlue), icon2.ToIconString()); + } + position = position with { X = position.X + iconSize2.X + iconPadding }; // Draw the text on the window drawlist diff --git a/Questionable/Windows/QuestSelectionWindow.cs b/Questionable/Windows/QuestSelectionWindow.cs index ba9b5ee1..a53b79e9 100644 --- a/Questionable/Windows/QuestSelectionWindow.cs +++ b/Questionable/Windows/QuestSelectionWindow.cs @@ -226,9 +226,7 @@ internal sealed class QuestSelectionWindow : LWindow if (knownQuest != null && knownQuest.FindSequence(0)?.LastStep()?.InteractionType is EInteractionType.AcceptQuest or EInteractionType.AcceptLeve && - !_questFunctions.IsQuestAccepted(quest.QuestId) && - !_questFunctions.IsQuestLocked(quest.QuestId) && - (quest.IsRepeatable || !_questFunctions.IsQuestAcceptedOrComplete(quest.QuestId))) + _questFunctions.IsReadyToAcceptQuest(quest.QuestId)) { ImGui.BeginDisabled(_questController.NextQuest != null || _questController.SimulatedQuest != null); diff --git a/Questionable/Windows/QuestValidationWindow.cs b/Questionable/Windows/QuestValidationWindow.cs index 173c82f3..7532ac5e 100644 --- a/Questionable/Windows/QuestValidationWindow.cs +++ b/Questionable/Windows/QuestValidationWindow.cs @@ -77,7 +77,7 @@ internal sealed class QuestValidationWindow : LWindow if (validationIssue.Severity == EIssueSeverity.Error) { using var color = ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.DalamudRed); - ImGui.TextUnformatted(FontAwesomeIcon.TimesCircle.ToIconString()); + ImGui.TextUnformatted(FontAwesomeIcon.ExclamationTriangle.ToIconString()); } else { diff --git a/Questionable/Windows/QuestWindow.cs b/Questionable/Windows/QuestWindow.cs index fa880ec4..37724c8c 100644 --- a/Questionable/Windows/QuestWindow.cs +++ b/Questionable/Windows/QuestWindow.cs @@ -119,8 +119,7 @@ internal sealed class QuestWindow : LWindow, IPersistableWindowConfig if (_configuration.General.HideInAllInstances && _territoryData.IsDutyInstance(_clientState.TerritoryType)) return false; - var currentQuest = _questController.CurrentQuest; - return currentQuest == null || !currentQuest.Quest.Root.TerritoryBlacklist.Contains(_clientState.TerritoryType); + return true; } public override void Draw() diff --git a/Questionable/Windows/UiUtils.cs b/Questionable/Windows/UiUtils.cs index 4e1fb9c3..270a76d9 100644 --- a/Questionable/Windows/UiUtils.cs +++ b/Questionable/Windows/UiUtils.cs @@ -26,6 +26,8 @@ internal sealed class UiUtils return (ImGuiColors.DalamudYellow, FontAwesomeIcon.PersonWalkingArrowRight, "Active"); else if (_questFunctions.IsQuestAcceptedOrComplete(elementId)) return (ImGuiColors.ParsedGreen, FontAwesomeIcon.Check, "Complete"); + else if (_questFunctions.IsQuestUnobtainable(elementId)) + return (ImGuiColors.DalamudGrey, FontAwesomeIcon.Minus, "Unobtainable"); else if (_questFunctions.IsQuestLocked(elementId)) return (ImGuiColors.DalamudRed, FontAwesomeIcon.Times, "Locked"); else @@ -56,6 +58,7 @@ internal sealed class UiUtils if (extraPadding > 0) ImGui.SetCursorPosX(ImGui.GetCursorPosX() + extraPadding); ImGui.TextUnformatted(text); + hover |= ImGui.IsItemHovered(); return hover; } diff --git a/Questionable/packages.lock.json b/Questionable/packages.lock.json index 1fd12865..07f5b16f 100644 --- a/Questionable/packages.lock.json +++ b/Questionable/packages.lock.json @@ -65,12 +65,9 @@ }, "System.Text.Json": { "type": "Direct", - "requested": "[8.0.4, )", - "resolved": "8.0.4", - "contentHash": "bAkhgDJ88XTsqczoxEMliSrpijKZHhbJQldhAmObj/RbrN3sU5dcokuXmWJWsdQAhiMJ9bTayWsL1C9fbbCRhw==", - "dependencies": { - "System.Text.Encodings.Web": "8.0.0" - } + "requested": "[8.0.5, )", + "resolved": "8.0.5", + "contentHash": "0f1B50Ss7rqxXiaBJyzUu9bWFOO2/zSlifZ/UNMdiIpDYe4cY4LQQicP4nirK1OS31I43rn062UIJ1Q9bpmHpg==" }, "Humanizer.Core": { "type": "Transitive", @@ -174,15 +171,10 @@ "Microsoft.SourceLink.Common": "1.1.1" } }, - "System.Text.Encodings.Web": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "yev/k9GHAEGx2Rg3/tU6MQh4HGBXJs70y7j1LaM1i/ER9po+6nnQ6RRqTJn1E7Xu0fbIFK80Nh5EoODxrbxwBQ==" - }, "gatheringpaths": { "type": "Project", "dependencies": { - "Questionable.Model": "[1.0.0, )" + "Questionable.Model": "[3.10.0, )" } }, "llib": { @@ -194,13 +186,13 @@ "questionable.model": { "type": "Project", "dependencies": { - "System.Text.Json": "[8.0.4, )" + "System.Text.Json": "[8.0.5, )" } }, "questpaths": { "type": "Project", "dependencies": { - "Questionable.Model": "[1.0.0, )" + "Questionable.Model": "[3.10.0, )" } } }