From 930f623c7d7d72cb33f01b04a739f771945d9d3a Mon Sep 17 00:00:00 2001 From: Liza Carvelli Date: Tue, 12 Aug 2025 22:38:52 +0200 Subject: [PATCH] Change how cutscene-only filler sequences are handled --- .../Dailies/1264_The Magitek Menace.json | 131 +++++----- .../MSQ-1/Gridania/129_Spirithold Broken.json | 14 +- .../MSQ-1/Gridania/445_Chasing Shadows.json | 14 +- .../Gridania/447_To Guard a Guardian.json | 14 +- .../MSQ-1/Limsa/469_Just Deserts.json | 14 +- .../Limsa/543_Lurkers in the Grotto.json | 14 +- .../MSQ-1/Limsa/544_Feint and Strike.json | 14 +- .../Ul'dah/320_Way Down in the Hole.json | 14 +- .../Ul'dah/551_Duty, Honor, Country.json | 14 +- .../801_Skeletons in Her Closet.json | 14 +- .../4522_The Ultimate Weapon.json | 28 +-- .../E6-2.55/4591_The Steps of Faith.json | 14 +- .../2205_To Rule the Skies.json | 14 +- .../1616_Lord of the Hive.json | 14 +- .../A4-Ishgard/1640_A Knight's Calling.json | 14 +- .../MSQ/A7-Azys Lla/1669_Heavensward.json | 14 +- .../2163_As Goes Light, So Goes Darkness.json | 14 +- .../MSQ/D-3.3/2245_An End to the Song.json | 14 +- .../Misc/4172_Ascending to Empyreum.json | 14 +- .../Namazu/Dailies/3107_Free for Most.json | 5 +- .../MCH/2907_Release the Hounds.json | 4 +- .../MSQ/F-4.5/3183_The Face of War.json | 14 +- .../MSQ/H-4.55/3185_A Requiem for Heroes.json | 14 +- .../Story/3683_Manic Pixie Dream Realm.json | 28 +-- .../Story/3684_Sustenance for the Soul.json | 14 +- .../GNB/3262_Hired Gunblades.json | 4 +- .../GNB/3266_Steel against Steel.json | 3 +- .../3279_The Syrcus Trench.json | 14 +- .../3286_City of Final Pleasures.json | 14 +- .../3291_In Search of Alisaie.json | 14 +- .../MSQ/C-Rak'tika/3324_Into the Dark.json | 14 +- .../3643_Extinguishing the Last Light.json | 14 +- .../MSQ/F-Tempest/3654_Shadowbringers.json | 28 +-- .../MSQ/G-5.1/3674_A Grand Adventure.json | 14 +- .../MSQ/H-5.2/3769_Beneath the Surface.json | 14 +- .../H-5.2/3770_Echoes of a Fallen Star.json | 14 +- .../MSQ/I-5.3/3775_Faded Memories.json | 14 +- .../MSQ/I-5.3/3777_The Converging Light.json | 14 +- .../MSQ/I-5.3/3778_Hope's Confluence.json | 28 +-- .../J-5.4/4011_Like Master, Like Pupil.json | 14 +- .../MSQ/K-5.5/4062_The Flames of War.json | 14 +- .../Relics/3835_Path to the Past.json | 234 +++++++++--------- .../Relics/3836_The Bozja Incident.json | 172 ++++++------- .../Physical/3278_Courage Born of Fear.json | 3 +- .../4361_A Labyrinthine Descent.json | 14 +- .../4377_In the Dark of the Tower.json | 14 +- .../B-Garlemald/4383_A Frosty Reception.json | 14 +- .../B-Garlemald/4395_Gateway of the Gods.json | 14 +- .../B-Garlemald/4396_A Trip to the Moon.json | 14 +- .../MSQ/B-Garlemald/4398_The Martyr.json | 14 +- .../MSQ/D-Thavnair2/4409_Skies Aflame.json | 14 +- .../MSQ/E-Elpis/4420_Hope Upon a Flower.json | 14 +- .../E-Elpis/4437_Caging the Messenger.json | 14 +- .../4449_Her Children One and All.json | 28 +-- .../MSQ/G-UltimaThule/4464_Endwalker.json | 42 +--- .../MSQ/H-6.1/4529_Alzadaals Legacy.json | 14 +- .../MSQ/I-6.2/4592_In Search of Azdaja.json | 14 +- .../MSQ/I-6.2/4597_The Wind Rises.json | 28 +-- .../MSQ/J-6.3/4674_King of the Mountain.json | 14 +- .../MSQ/J-6.3/4677_Desires Untold.json | 28 +-- .../MSQ/K-6.4/4736_Going Haam.json | 14 +- .../MSQ/K-6.4/4742_Abyssal Dark.json | 14 +- .../MSQ/L-6.5/4748_Down in the Dark.json | 42 +--- .../MSQ/M-6.55/4752_The Game Is Afoot.json | 14 +- .../Physical Ranged/4125_Laid to Rest.json | 14 +- .../VPR/4849_Fangs of the Viper.json | 14 +- .../VPR/4853_Vengeance of the Viper.json | 14 +- .../4860_A New World to Explore.json | 14 +- .../4865_To Kozama'uka.json | 14 +- .../4879_For All Turali.json | 14 +- .../4884_The Shape of Peace.json | 14 +- .../4891_The High Luminary.json | 14 +- .../4894_The Skyruin.json | 14 +- .../C-Yak T'el/4897_The Leap to Yak T'el.json | 14 +- .../4909_Road to the Golden City.json | 14 +- .../4912_The Long Road to Xak Tural.json | 14 +- .../4923_In Yyasulani's Shadow.json | 14 +- .../4926_All Aboard.json | 28 +-- .../4933_Solution Nine.json | 14 +- .../4945_The Resilient Son.json | 28 +-- .../4948_Through the Gate of Gold.json | 28 +-- .../MSQ/F-Living Memory/4959_Dawntrail.json | 28 +-- .../MSQ/G-7.1/5249_The Warmth of Family.json | 3 +- .../MSQ/I-7.3/5366_My Memories and Yours.json | 14 +- .../I-7.3/5367_A Darkness in the Heart.json | 14 +- .../5368_Preservation Their Purpose.json | 14 +- .../MSQ/I-7.3/5371_A Terminal Invitation.json | 28 +-- .../Healer/4829_An Antidote for Anarchy.json | 14 +- .../4847_Heroes and Pretenders.json | 14 +- .../Role Quests/Melee/4835_A Hunter True.json | 14 +- .../4841_The Mightiest Shield.json | 14 +- .../Tank/4823_Dreams of a New Day.json | 14 +- QuestPaths/quest-v1.json | 4 +- Questionable.Model/Questing/QuestSequence.cs | 2 +- Questionable/Controller/QuestController.cs | 26 +- .../Controller/Steps/Shared/Gather.cs | 6 +- Questionable/Controller/Steps/TaskCreator.cs | 94 ++++--- 97 files changed, 441 insertions(+), 1636 deletions(-) diff --git a/QuestPaths/2.x - A Realm Reborn/Allied Societies/Sylphs/Dailies/1264_The Magitek Menace.json b/QuestPaths/2.x - A Realm Reborn/Allied Societies/Sylphs/Dailies/1264_The Magitek Menace.json index d376b2f1..e911f097 100644 --- a/QuestPaths/2.x - A Realm Reborn/Allied Societies/Sylphs/Dailies/1264_The Magitek Menace.json +++ b/QuestPaths/2.x - A Realm Reborn/Allied Societies/Sylphs/Dailies/1264_The Magitek Menace.json @@ -1,73 +1,72 @@ { - "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "Censored", - "Disabled": true, - "Comment": "This is a FATE Allied Society Quest", - "QuestSequence": [ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Censored", + "Disabled": true, + "Comment": "This is a FATE Allied Society Quest", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ { - "Sequence": 0, - "Steps": [ - { - "DataId": 1005561, - "Position": { - "X": 47.01306, - "Y": 6.0734644, - "Z": 254.01685 - }, - "TerritoryId": 152, - "InteractionType": "AcceptQuest", - "AetheryteShortcut": "East Shroud - Hawthorne Hut", - "Fly": true, - "SkipConditions": { - "AetheryteShortcutIf": { - "InSameTerritory": true - } - } - } - ] - }, + "DataId": 1005561, + "Position": { + "X": 47.01306, + "Y": 6.0734644, + "Z": 254.01685 + }, + "TerritoryId": 152, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "East Shroud - Hawthorne Hut", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1 + }, + { + "Sequence": 255, + "Steps": [ { - "Sequence": 1, - "Steps": [] + "Position": { + "X": 37.71168, + "Y": 4.7303743, + "Z": 250.62769 + }, + "TerritoryId": 152, + "InteractionType": "WalkTo", + "Fly": true, + "Land": true, + "SkipConditions": { + "StepIf": { + "NearPosition": { + "Position": { + "X": 37.71168, + "Y": 4.7303743, + "Z": 250.62769 + }, + "TerritoryId": 152, + "MaximumDistance": 10 + } + } + } }, { - "Sequence": 255, - "Steps": [ - { - "Position": { - "X": 37.71168, - "Y": 4.7303743, - "Z": 250.62769 - }, - "TerritoryId": 152, - "InteractionType": "WalkTo", - "Fly": true, - "Land": true, - "SkipConditions": { - "StepIf": { - "NearPosition": { - "Position": { - "X": 37.71168, - "Y": 4.7303743, - "Z": 250.62769 - }, - "TerritoryId": 152, - "MaximumDistance": 10 - } - } - } - }, - { - "DataId": 1005561, - "Position": { - "X": 47.01306, - "Y": 6.0734644, - "Z": 254.01685 - }, - "TerritoryId": 152, - "InteractionType": "CompleteQuest" - } - ] + "DataId": 1005561, + "Position": { + "X": 47.01306, + "Y": 6.0734644, + "Z": 254.01685 + }, + "TerritoryId": 152, + "InteractionType": "CompleteQuest" } - ] + ] + } + ] } 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 9b882da1..ec0eebca 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 @@ -147,19 +147,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 5, 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 73e086f6..a48f76ce 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 @@ -40,19 +40,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Gridania/447_To Guard a Guardian.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Gridania/447_To Guard a Guardian.json index 0e90567d..04941d82 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Gridania/447_To Guard a Guardian.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Gridania/447_To Guard a Guardian.json @@ -89,19 +89,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 255, 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 c38eddcb..8282a61b 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 @@ -82,19 +82,7 @@ ] }, { - "Sequence": 5, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 5 }, { "Sequence": 6, 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 e319cb16..f38283ec 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 @@ -37,19 +37,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 255, 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 eed56285..130ee6ec 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 @@ -70,19 +70,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 255, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Ul'dah/320_Way Down in the Hole.json b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Ul'dah/320_Way Down in the Hole.json index 10b394a7..0dcb5688 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-1/Ul'dah/320_Way Down in the Hole.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-1/Ul'dah/320_Way Down in the Hole.json @@ -167,19 +167,7 @@ ] }, { - "Sequence": 5, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 5 }, { "Sequence": 6, 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 846a75dc..222f173d 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 @@ -77,19 +77,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 255, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/A9-Haukke Manor/801_Skeletons in Her Closet.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/A9-Haukke Manor/801_Skeletons in Her Closet.json index e8b7817f..53e0b20d 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/A9-Haukke Manor/801_Skeletons in Her Closet.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/A9-Haukke Manor/801_Skeletons in Her Closet.json @@ -77,19 +77,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 4, 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 aad57d7c..62ae139e 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 @@ -54,19 +54,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 4, @@ -82,19 +70,7 @@ ] }, { - "Sequence": 5, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 5 }, { "Sequence": 6, diff --git a/QuestPaths/2.x - A Realm Reborn/MSQ-2/E6-2.55/4591_The Steps of Faith.json b/QuestPaths/2.x - A Realm Reborn/MSQ-2/E6-2.55/4591_The Steps of Faith.json index 1c91e8f8..906fc743 100644 --- a/QuestPaths/2.x - A Realm Reborn/MSQ-2/E6-2.55/4591_The Steps of Faith.json +++ b/QuestPaths/2.x - A Realm Reborn/MSQ-2/E6-2.55/4591_The Steps of Faith.json @@ -41,19 +41,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, diff --git a/QuestPaths/3.x - Heavensward/Alliance Raid Quests/2205_To Rule the Skies.json b/QuestPaths/3.x - Heavensward/Alliance Raid Quests/2205_To Rule the Skies.json index d2dcc602..a053802b 100644 --- a/QuestPaths/3.x - Heavensward/Alliance Raid Quests/2205_To Rule the Skies.json +++ b/QuestPaths/3.x - Heavensward/Alliance Raid Quests/2205_To Rule the Skies.json @@ -32,19 +32,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 255, 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 bac7e067..99548bba 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 @@ -59,19 +59,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 5, diff --git a/QuestPaths/3.x - Heavensward/MSQ/A4-Ishgard/1640_A Knight's Calling.json b/QuestPaths/3.x - Heavensward/MSQ/A4-Ishgard/1640_A Knight's Calling.json index da55ca41..bba5049e 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A4-Ishgard/1640_A Knight's Calling.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A4-Ishgard/1640_A Knight's Calling.json @@ -67,19 +67,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 5, diff --git a/QuestPaths/3.x - Heavensward/MSQ/A7-Azys Lla/1669_Heavensward.json b/QuestPaths/3.x - Heavensward/MSQ/A7-Azys Lla/1669_Heavensward.json index 215f1849..17721277 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/A7-Azys Lla/1669_Heavensward.json +++ b/QuestPaths/3.x - Heavensward/MSQ/A7-Azys Lla/1669_Heavensward.json @@ -70,19 +70,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 5, 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 a2111787..9cb8e5b0 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 @@ -48,19 +48,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, diff --git a/QuestPaths/3.x - Heavensward/MSQ/D-3.3/2245_An End to the Song.json b/QuestPaths/3.x - Heavensward/MSQ/D-3.3/2245_An End to the Song.json index c49c8e39..7d7ec14c 100644 --- a/QuestPaths/3.x - Heavensward/MSQ/D-3.3/2245_An End to the Song.json +++ b/QuestPaths/3.x - Heavensward/MSQ/D-3.3/2245_An End to the Song.json @@ -25,19 +25,7 @@ ] }, { - "Sequence": 1, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 1 }, { "Sequence": 2, diff --git a/QuestPaths/3.x - Heavensward/Unlocks/Misc/4172_Ascending to Empyreum.json b/QuestPaths/3.x - Heavensward/Unlocks/Misc/4172_Ascending to Empyreum.json index 72601fe5..f7a58b1e 100644 --- a/QuestPaths/3.x - Heavensward/Unlocks/Misc/4172_Ascending to Empyreum.json +++ b/QuestPaths/3.x - Heavensward/Unlocks/Misc/4172_Ascending to Empyreum.json @@ -50,19 +50,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, diff --git a/QuestPaths/4.x - Stormblood/Allied Societies/Namazu/Dailies/3107_Free for Most.json b/QuestPaths/4.x - Stormblood/Allied Societies/Namazu/Dailies/3107_Free for Most.json index f88df652..d68ddad7 100644 --- a/QuestPaths/4.x - Stormblood/Allied Societies/Namazu/Dailies/3107_Free for Most.json +++ b/QuestPaths/4.x - Stormblood/Allied Societies/Namazu/Dailies/3107_Free for Most.json @@ -44,8 +44,7 @@ ] }, { - "Sequence": 2, - "Steps": [] + "Sequence": 2 }, { "Sequence": 255, @@ -126,4 +125,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/QuestPaths/4.x - Stormblood/Class Quests/MCH/2907_Release the Hounds.json b/QuestPaths/4.x - Stormblood/Class Quests/MCH/2907_Release the Hounds.json index f4124dee..32e5fb75 100644 --- a/QuestPaths/4.x - Stormblood/Class Quests/MCH/2907_Release the Hounds.json +++ b/QuestPaths/4.x - Stormblood/Class Quests/MCH/2907_Release the Hounds.json @@ -72,9 +72,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - ] + "Sequence": 3 }, { "Sequence": 4, 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 0dcf2988..f9594033 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 @@ -35,19 +35,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, 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 76e5fdb6..3840513f 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 @@ -62,19 +62,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, diff --git a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Story/3683_Manic Pixie Dream Realm.json b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Story/3683_Manic Pixie Dream Realm.json index 201cfc2d..ff03942a 100644 --- a/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Story/3683_Manic Pixie Dream Realm.json +++ b/QuestPaths/5.x - Shadowbringers/Allied Societies/Pixies/Story/3683_Manic Pixie Dream Realm.json @@ -127,19 +127,7 @@ ] }, { - "Sequence": 7, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 7 }, { "Sequence": 8, @@ -157,19 +145,7 @@ ] }, { - "Sequence": 9, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 9 }, { "Sequence": 10, 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 75b26eac..58ac0f7d 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 @@ -193,19 +193,7 @@ ] }, { - "Sequence": 10, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 10 }, { "Sequence": 11, diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/GNB/3262_Hired Gunblades.json b/QuestPaths/5.x - Shadowbringers/Class Quests/GNB/3262_Hired Gunblades.json index 187ee716..8feb64ee 100644 --- a/QuestPaths/5.x - Shadowbringers/Class Quests/GNB/3262_Hired Gunblades.json +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/GNB/3262_Hired Gunblades.json @@ -190,9 +190,7 @@ ] }, { - "Sequence": 6, - "Steps": [ - ] + "Sequence": 6 }, { "Sequence": 7, diff --git a/QuestPaths/5.x - Shadowbringers/Class Quests/GNB/3266_Steel against Steel.json b/QuestPaths/5.x - Shadowbringers/Class Quests/GNB/3266_Steel against Steel.json index 443df197..2fc4724e 100644 --- a/QuestPaths/5.x - Shadowbringers/Class Quests/GNB/3266_Steel against Steel.json +++ b/QuestPaths/5.x - Shadowbringers/Class Quests/GNB/3266_Steel against Steel.json @@ -64,8 +64,7 @@ ] }, { - "Sequence": 3, - "Steps": [] + "Sequence": 3 }, { "Sequence": 4, 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 456f753b..96ac18f8 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 @@ -79,19 +79,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 4, 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 ed00acad..b3091fea 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 @@ -55,19 +55,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/A3-Amh Araeng 1/3291_In Search of Alisaie.json b/QuestPaths/5.x - Shadowbringers/MSQ/A3-Amh Araeng 1/3291_In Search of Alisaie.json index f300ab57..2767027d 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/A3-Amh Araeng 1/3291_In Search of Alisaie.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/A3-Amh Araeng 1/3291_In Search of Alisaie.json @@ -54,19 +54,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 4, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3324_Into the Dark.json b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3324_Into the Dark.json index fbf2d4c5..8596bf56 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3324_Into the Dark.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/C-Rak'tika/3324_Into the Dark.json @@ -48,19 +48,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, 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 ef9aa4df..32e63150 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 @@ -70,19 +70,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 5, 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 4ff383f6..1e9450b9 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3654_Shadowbringers.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/F-Tempest/3654_Shadowbringers.json @@ -128,19 +128,7 @@ ] }, { - "Sequence": 8, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 8 }, { "Sequence": 9, @@ -156,19 +144,7 @@ ] }, { - "Sequence": 10, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 10 }, { "Sequence": 11, 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 2e856544..b5ab4858 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 @@ -110,19 +110,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 255, 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 61a471aa..7fff3665 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 @@ -48,19 +48,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 255, diff --git a/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3770_Echoes of a Fallen Star.json b/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3770_Echoes of a Fallen Star.json index 21c950ec..dd912280 100644 --- a/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3770_Echoes of a Fallen Star.json +++ b/QuestPaths/5.x - Shadowbringers/MSQ/H-5.2/3770_Echoes of a Fallen Star.json @@ -18,19 +18,7 @@ ] }, { - "Sequence": 1, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 1 }, { "Sequence": 2, 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 44d8eba5..f7895cdd 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 @@ -52,19 +52,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, 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 a1b2847f..ce66f21b 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 @@ -62,19 +62,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 5, 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 57781ac8..c02921a4 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 @@ -25,19 +25,7 @@ ] }, { - "Sequence": 1, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 1 }, { "Sequence": 2, @@ -53,19 +41,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 255, 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 62f02276..beb0f395 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 @@ -90,19 +90,7 @@ ] }, { - "Sequence": 5, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 5 }, { "Sequence": 255, 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 0024ca16..0c7ebbc8 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 @@ -67,19 +67,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 255, diff --git a/QuestPaths/5.x - Shadowbringers/Relics/3835_Path to the Past.json b/QuestPaths/5.x - Shadowbringers/Relics/3835_Path to the Past.json index 0cb9d443..e1342981 100644 --- a/QuestPaths/5.x - Shadowbringers/Relics/3835_Path to the Past.json +++ b/QuestPaths/5.x - Shadowbringers/Relics/3835_Path to the Past.json @@ -1,132 +1,120 @@ { - "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "Censored", - "QuestSequence": [ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Censored", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ { - "Sequence": 0, - "Steps": [ - { - "DataId": 1032868, - "Position": { - "X": -258.59473, - "Y": 53.217506, - "Z": -644.8616 - }, - "TerritoryId": 614, - "InteractionType": "AcceptQuest", - "AetheryteShortcut": "Yanxia - House of the Fierce", - "Fly": true, - "SkipConditions": { - "AetheryteShortcutIf": { - "InSameTerritory": true - } - } - } - ] - }, - { - "Sequence": 1, - "Steps": [ - { - "DataId": 1032869, - "Position": { - "X": 127.27539, - "Y": -4.1787133, - "Z": 98.68005 - }, - "TerritoryId": 759, - "InteractionType": "Interact", - "AetheryteShortcut": "Doman Enclave", - "AethernetShortcut": [ - "[Doman Enclave] Aetheryte Plaza", - "[Doman Enclave] Ferry Docks" - ], - "DialogueChoices": [ - { - "Type": "YesNo", - "Prompt": "TEXT_LUCKSA002_03835_Q1_000_031", - "Yes": true - } - ] - } - ] - }, + "DataId": 1032868, + "Position": { + "X": -258.59473, + "Y": 53.217506, + "Z": -644.8616 + }, + "TerritoryId": 614, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Yanxia - House of the Fierce", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] - }, + "DataId": 1032869, + "Position": { + "X": 127.27539, + "Y": -4.1787133, + "Z": 98.68005 + }, + "TerritoryId": 759, + "InteractionType": "Interact", + "AetheryteShortcut": "Doman Enclave", + "AethernetShortcut": [ + "[Doman Enclave] Aetheryte Plaza", + "[Doman Enclave] Ferry Docks" + ], + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_LUCKSA002_03835_Q1_000_031", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 2 + }, + { + "Sequence": 3, + "Steps": [ { - "Sequence": 3, - "Steps": [ - { - "DataId": 1032874, - "Position": { - "X": 13.168518, - "Y": -0.23751694, - "Z": 8.377136 - }, - "TerritoryId": 915, - "InteractionType": "Interact" - } - ] - }, + "DataId": 1032874, + "Position": { + "X": 13.168518, + "Y": -0.23751694, + "Z": 8.377136 + }, + "TerritoryId": 915, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 4, + "Steps": [ { - "Sequence": 4, - "Steps": [ - { - "DataId": 1032871, - "Position": { - "X": 22.323914, - "Y": 0.09971012, - "Z": -14.694458 - }, - "TerritoryId": 915, - "InteractionType": "Interact" - } - ] - }, + "DataId": 1032871, + "Position": { + "X": 22.323914, + "Y": 0.09971012, + "Z": -14.694458 + }, + "TerritoryId": 915, + "InteractionType": "Interact" + } + ] + }, + { + "Sequence": 5, + "Steps": [ { - "Sequence": 5, - "Steps": [ - { - "DataId": 1032877, - "Position": { - "X": 29.43457, - "Y": 0, - "Z": 30.350098 - }, - "TerritoryId": 635, - "InteractionType": "Interact", - "AetheryteShortcut": "Rhalgr's Reach" - } - ] - }, + "DataId": 1032877, + "Position": { + "X": 29.43457, + "Y": 0, + "Z": 30.350098 + }, + "TerritoryId": 635, + "InteractionType": "Interact", + "AetheryteShortcut": "Rhalgr's Reach" + } + ] + }, + { + "Sequence": 255, + "Steps": [ { - "Sequence": 255, - "Steps": [ - { - "DataId": 1032877, - "Position": { - "X": 29.43457, - "Y": 0, - "Z": 30.350098 - }, - "TerritoryId": 635, - "InteractionType": "CompleteQuest", - "NextQuestId": 3836 - } - ] + "DataId": 1032877, + "Position": { + "X": 29.43457, + "Y": 0, + "Z": 30.350098 + }, + "TerritoryId": 635, + "InteractionType": "CompleteQuest", + "NextQuestId": 3836 } - ] + ] + } + ] } diff --git a/QuestPaths/5.x - Shadowbringers/Relics/3836_The Bozja Incident.json b/QuestPaths/5.x - Shadowbringers/Relics/3836_The Bozja Incident.json index fe1cc7c0..c818c97d 100644 --- a/QuestPaths/5.x - Shadowbringers/Relics/3836_The Bozja Incident.json +++ b/QuestPaths/5.x - Shadowbringers/Relics/3836_The Bozja Incident.json @@ -1,99 +1,87 @@ { - "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", - "Author": "Censored", - "QuestSequence": [ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "Censored", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ { - "Sequence": 0, - "Steps": [ - { - "DataId": 1032877, - "Position": { - "X": 29.43457, - "Y": 0, - "Z": 30.350098 - }, - "TerritoryId": 635, - "InteractionType": "AcceptQuest", - "AetheryteShortcut": "Rhalgr's Reach", - "SkipConditions": { - "AetheryteShortcutIf": { - "InSameTerritory": true - } - } - } - ] - }, - { - "Sequence": 1, - "Steps": [ - { - "DataId": 1032869, - "Position": { - "X": 127.27539, - "Y": -4.1787133, - "Z": 98.68005 - }, - "TerritoryId": 759, - "InteractionType": "Interact", - "AetheryteShortcut": "Doman Enclave", - "AethernetShortcut": [ - "[Doman Enclave] Aetheryte Plaza", - "[Doman Enclave] Ferry Docks" - ] - } - ] - }, + "DataId": 1032877, + "Position": { + "X": 29.43457, + "Y": 0, + "Z": 30.350098 + }, + "TerritoryId": 635, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Rhalgr's Reach", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ { - "Sequence": 2, - "Steps": [ - { - "DataId": 1032901, - "Position": { - "X": 9.567322, - "Y": -6.0169958E-05, - "Z": -10.269409 - }, - "TerritoryId": 915, - "InteractionType": "SinglePlayerDuty", - "DialogueChoices": [ - { - "Type": "YesNo", - "Prompt": "TEXT_LUCKSA003_03836_Q1_100_098", - "Yes": true - } - ] - } - ] - }, + "DataId": 1032869, + "Position": { + "X": 127.27539, + "Y": -4.1787133, + "Z": 98.68005 + }, + "TerritoryId": 759, + "InteractionType": "Interact", + "AetheryteShortcut": "Doman Enclave", + "AethernetShortcut": [ + "[Doman Enclave] Aetheryte Plaza", + "[Doman Enclave] Ferry Docks" + ] + } + ] + }, + { + "Sequence": 2, + "Steps": [ { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] - }, + "DataId": 1032901, + "Position": { + "X": 9.567322, + "Y": -6.0169958E-05, + "Z": -10.269409 + }, + "TerritoryId": 915, + "InteractionType": "SinglePlayerDuty", + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_LUCKSA003_03836_Q1_100_098", + "Yes": true + } + ] + } + ] + }, + { + "Sequence": 3 + }, + { + "Sequence": 255, + "Steps": [ { - "Sequence": 255, - "Steps": [ - { - "DataId": 1032872, - "Position": { - "X": 16.67804, - "Y": 0.03006095, - "Z": -17.868408 - }, - "TerritoryId": 915, - "InteractionType": "CompleteQuest" - } - ] + "DataId": 1032872, + "Position": { + "X": 16.67804, + "Y": 0.03006095, + "Z": -17.868408 + }, + "TerritoryId": 915, + "InteractionType": "CompleteQuest" } - ] + ] + } + ] } 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 index 51533dbb..8addb3f4 100644 --- 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 @@ -81,8 +81,7 @@ ] }, { - "Sequence": 4, - "Steps": [] + "Sequence": 4 }, { "Sequence": 5, diff --git a/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4361_A Labyrinthine Descent.json b/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4361_A Labyrinthine Descent.json index 9a765b5a..d5e26775 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4361_A Labyrinthine Descent.json +++ b/QuestPaths/6.x - Endwalker/MSQ/A-Thavnair1-Labyrinthos1/4361_A Labyrinthine Descent.json @@ -126,19 +126,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 5, 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 d07dba7e..a346bc09 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 @@ -63,19 +63,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 255, 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 a1734a30..59ffc151 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 @@ -53,19 +53,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, 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 2e876fb8..a04cb503 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 @@ -104,19 +104,7 @@ ] }, { - "Sequence": 5, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 5 }, { "Sequence": 255, 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 5a3b25cd..840e66c4 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 @@ -40,19 +40,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, 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 60e6929e..cb17a143 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 @@ -61,19 +61,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 255, 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 21ad7d9e..2c667dff 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 @@ -79,19 +79,7 @@ ] }, { - "Sequence": 5, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 5 }, { "Sequence": 255, diff --git a/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4420_Hope Upon a Flower.json b/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4420_Hope Upon a Flower.json index 82b13f6e..bc27ab37 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4420_Hope Upon a Flower.json +++ b/QuestPaths/6.x - Endwalker/MSQ/E-Elpis/4420_Hope Upon a Flower.json @@ -39,19 +39,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, 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 89c6fc54..12ea1f43 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 @@ -47,19 +47,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 255, 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 fc0aac0a..bd3e851b 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 @@ -49,19 +49,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 4, @@ -77,19 +65,7 @@ ] }, { - "Sequence": 5, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 5 }, { "Sequence": 6, 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 115157d5..27f8176e 100644 --- a/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4464_Endwalker.json +++ b/QuestPaths/6.x - Endwalker/MSQ/G-UltimaThule/4464_Endwalker.json @@ -32,19 +32,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, @@ -60,19 +48,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 5, @@ -95,19 +71,7 @@ ] }, { - "Sequence": 6, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 6 }, { "Sequence": 7, 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 8638a86c..17f9fe91 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 @@ -34,19 +34,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 255, 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 561b1903..9b530bb7 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 @@ -82,19 +82,7 @@ ] }, { - "Sequence": 5, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 5 }, { "Sequence": 255, 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 161b2188..258bff88 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 @@ -48,19 +48,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, @@ -76,19 +64,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 255, 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 14c3171c..060fc137 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 @@ -64,19 +64,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 255, 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 2f46c5a3..bf97faee 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 @@ -64,19 +64,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 4, @@ -92,19 +80,7 @@ ] }, { - "Sequence": 5, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 5 }, { "Sequence": 255, 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 30fa509b..7f0b107a 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 @@ -171,19 +171,7 @@ ] }, { - "Sequence": 8, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 8 }, { "Sequence": 255, 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 8961732b..9a8d28f7 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 @@ -47,19 +47,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 255, 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 f507df68..7938aeb5 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 @@ -32,19 +32,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, @@ -69,19 +57,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 5, @@ -97,19 +73,7 @@ ] }, { - "Sequence": 6, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 6 }, { "Sequence": 255, 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 058ec658..d51d782d 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 @@ -45,19 +45,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, diff --git a/QuestPaths/6.x - Endwalker/Role Quests/Physical Ranged/4125_Laid to Rest.json b/QuestPaths/6.x - Endwalker/Role Quests/Physical Ranged/4125_Laid to Rest.json index 044209f5..56dda6af 100644 --- a/QuestPaths/6.x - Endwalker/Role Quests/Physical Ranged/4125_Laid to Rest.json +++ b/QuestPaths/6.x - Endwalker/Role Quests/Physical Ranged/4125_Laid to Rest.json @@ -55,19 +55,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, 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 7ab43797..308dfff6 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 @@ -137,19 +137,7 @@ ] }, { - "Sequence": 5, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 5 }, { "Sequence": 6, diff --git a/QuestPaths/7.x - Dawntrail/Class Quests/VPR/4853_Vengeance of the Viper.json b/QuestPaths/7.x - Dawntrail/Class Quests/VPR/4853_Vengeance of the Viper.json index 254709bb..203b43b5 100644 --- a/QuestPaths/7.x - Dawntrail/Class Quests/VPR/4853_Vengeance of the Viper.json +++ b/QuestPaths/7.x - Dawntrail/Class Quests/VPR/4853_Vengeance of the Viper.json @@ -57,19 +57,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 4, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4860_A New World to Explore.json b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4860_A New World to Explore.json index 5db8f68f..503e9ab3 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4860_A New World to Explore.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4860_A New World to Explore.json @@ -66,19 +66,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 4, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4865_To Kozama'uka.json b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4865_To Kozama'uka.json index 5de37fbf..e41ef1b1 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4865_To Kozama'uka.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/A-Kozama'uka1-Urqopacha1/4865_To Kozama'uka.json @@ -34,19 +34,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, 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 986d7526..5931bb50 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 @@ -66,19 +66,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 5, 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 32e96d54..5ad515ec 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 @@ -46,19 +46,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, 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 39268a03..b0c2f519 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 @@ -31,19 +31,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 255, 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 4f5e866e..097d0bb4 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 @@ -159,19 +159,7 @@ ] }, { - "Sequence": 5, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 5 }, { "Sequence": 255, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4897_The Leap to Yak T'el.json b/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4897_The Leap to Yak T'el.json index c720eb86..1abd6fc8 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4897_The Leap to Yak T'el.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/C-Yak T'el/4897_The Leap to Yak T'el.json @@ -46,19 +46,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, 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 9a1488ed..3c358037 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 @@ -123,19 +123,7 @@ ] }, { - "Sequence": 6, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 6 }, { "Sequence": 255, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4912_The Long Road to Xak Tural.json b/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4912_The Long Road to Xak Tural.json index d0895fdf..70398f1d 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4912_The Long Road to Xak Tural.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/D-Shaaloani-HeritageFound1/4912_The Long Road to Xak Tural.json @@ -33,19 +33,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, 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 65fe8e85..e511ce17 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 @@ -38,19 +38,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, 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 5c83c615..3430bca3 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 @@ -40,19 +40,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, @@ -68,19 +56,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 255, 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 747faf16..de27bd7c 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 @@ -62,19 +62,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, 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 e57ca852..0c166ac2 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 @@ -57,19 +57,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 4, @@ -88,19 +76,7 @@ ] }, { - "Sequence": 5, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 5 }, { "Sequence": 6, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4948_Through the Gate of Gold.json b/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4948_Through the Gate of Gold.json index f3fc93d2..55791f60 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4948_Through the Gate of Gold.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4948_Through the Gate of Gold.json @@ -75,19 +75,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, @@ -106,19 +94,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 5, 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 0561e14d..9fe9a722 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 @@ -64,19 +64,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 4, @@ -92,19 +80,7 @@ ] }, { - "Sequence": 5, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 5 }, { "Sequence": 255, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/G-7.1/5249_The Warmth of Family.json b/QuestPaths/7.x - Dawntrail/MSQ/G-7.1/5249_The Warmth of Family.json index 204ac295..3277e192 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/G-7.1/5249_The Warmth of Family.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/G-7.1/5249_The Warmth of Family.json @@ -43,8 +43,7 @@ ] }, { - "Sequence": 2, - "Steps": [] + "Sequence": 2 }, { "Sequence": 3, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/I-7.3/5366_My Memories and Yours.json b/QuestPaths/7.x - Dawntrail/MSQ/I-7.3/5366_My Memories and Yours.json index 2d10d1e3..6043d07e 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/I-7.3/5366_My Memories and Yours.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/I-7.3/5366_My Memories and Yours.json @@ -121,19 +121,7 @@ ] }, { - "Sequence": 7, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 7 }, { "Sequence": 255, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/I-7.3/5367_A Darkness in the Heart.json b/QuestPaths/7.x - Dawntrail/MSQ/I-7.3/5367_A Darkness in the Heart.json index 9569ac04..9ca78c43 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/I-7.3/5367_A Darkness in the Heart.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/I-7.3/5367_A Darkness in the Heart.json @@ -119,19 +119,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 255, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/I-7.3/5368_Preservation Their Purpose.json b/QuestPaths/7.x - Dawntrail/MSQ/I-7.3/5368_Preservation Their Purpose.json index daa0551a..185af161 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/I-7.3/5368_Preservation Their Purpose.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/I-7.3/5368_Preservation Their Purpose.json @@ -41,19 +41,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, diff --git a/QuestPaths/7.x - Dawntrail/MSQ/I-7.3/5371_A Terminal Invitation.json b/QuestPaths/7.x - Dawntrail/MSQ/I-7.3/5371_A Terminal Invitation.json index 205ca0d9..01e51c86 100644 --- a/QuestPaths/7.x - Dawntrail/MSQ/I-7.3/5371_A Terminal Invitation.json +++ b/QuestPaths/7.x - Dawntrail/MSQ/I-7.3/5371_A Terminal Invitation.json @@ -47,19 +47,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 4, @@ -75,19 +63,7 @@ ] }, { - "Sequence": 5, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 5 }, { "Sequence": 6, diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Healer/4829_An Antidote for Anarchy.json b/QuestPaths/7.x - Dawntrail/Role Quests/Healer/4829_An Antidote for Anarchy.json index b56436f0..e99b41fc 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Healer/4829_An Antidote for Anarchy.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Healer/4829_An Antidote for Anarchy.json @@ -55,19 +55,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 4, 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 765794c0..aacd55f1 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 @@ -45,19 +45,7 @@ ] }, { - "Sequence": 2, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 2 }, { "Sequence": 3, diff --git a/QuestPaths/7.x - Dawntrail/Role Quests/Melee/4835_A Hunter True.json b/QuestPaths/7.x - Dawntrail/Role Quests/Melee/4835_A Hunter True.json index 043e48ce..c87b7d8a 100644 --- a/QuestPaths/7.x - Dawntrail/Role Quests/Melee/4835_A Hunter True.json +++ b/QuestPaths/7.x - Dawntrail/Role Quests/Melee/4835_A Hunter True.json @@ -120,19 +120,7 @@ ] }, { - "Sequence": 4, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 4 }, { "Sequence": 5, 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 20380ed1..7289c242 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 @@ -56,19 +56,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 4, 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 4f05b345..4e7ecc27 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 @@ -57,19 +57,7 @@ ] }, { - "Sequence": 3, - "Steps": [ - { - "Position": { - "X": 0, - "Y": 0, - "Z": 0 - }, - "TerritoryId": 1, - "InteractionType": "WalkTo", - "Comment": "Filler" - } - ] + "Sequence": 3 }, { "Sequence": 4, diff --git a/QuestPaths/quest-v1.json b/QuestPaths/quest-v1.json index 761c4ce4..3df1453d 100644 --- a/QuestPaths/quest-v1.json +++ b/QuestPaths/quest-v1.json @@ -47,7 +47,9 @@ "type": "array", "items": { "$ref": "#/$defs/Step" - } + }, + "minItems": 1, + "description": "All steps necessary to complete the quest sequence. If a sequence has no steps (e.g. if it is cutscene-only), this element should not be used." }, "Comment": { "type": "string" diff --git a/Questionable.Model/Questing/QuestSequence.cs b/Questionable.Model/Questing/QuestSequence.cs index 3e42e098..b98978e9 100644 --- a/Questionable.Model/Questing/QuestSequence.cs +++ b/Questionable.Model/Questing/QuestSequence.cs @@ -5,7 +5,7 @@ namespace Questionable.Model.Questing; public sealed class QuestSequence { - public int Sequence { get; set; } + public byte Sequence { get; set; } public string? Comment { get; set; } public List Steps { get; set; } = new(); diff --git a/Questionable/Controller/QuestController.cs b/Questionable/Controller/QuestController.cs index a8024fbb..6387f3b6 100644 --- a/Questionable/Controller/QuestController.cs +++ b/Questionable/Controller/QuestController.cs @@ -457,7 +457,7 @@ internal sealed class QuestController : MiniTaskController return; } - if (questToRun.Step >= sequence.Steps.Count) + if (sequence.Steps.Count > 0 && questToRun.Step >= sequence.Steps.Count) { DebugState = "Step not found"; Stop("Unknown step"); @@ -468,27 +468,30 @@ internal sealed class QuestController : MiniTaskController } } - public (QuestSequence? Sequence, QuestStep? Step) GetNextStep() + public (QuestSequence? Sequence, QuestStep? Step, bool createTasks) GetNextStep() { if (CurrentQuest == null) - return (null, null); + return (null, null, false); var q = CurrentQuest.Quest; var seq = q.FindSequence(CurrentQuest.Sequence); if (seq == null) - return (null, null); + return (null, null, true); + + if (seq.Steps.Count == 0) + return (seq, null, true); if (CurrentQuest.Step >= seq.Steps.Count) - return (null, null); + return (null, null, false); - return (seq, seq.Steps[CurrentQuest.Step]); + return (seq, seq.Steps[CurrentQuest.Step], true); } public void IncreaseStepCount(ElementId? questId, int? sequence, bool shouldContinue = false) { lock (_progressLock) { - (QuestSequence? seq, QuestStep? step) = GetNextStep(); + (QuestSequence? seq, QuestStep? step, _) = GetNextStep(); if (CurrentQuest == null || seq == null || step == null) { _logger.LogWarning("Unable to retrieve next quest step, not increasing step count"); @@ -662,8 +665,8 @@ internal sealed class QuestController : MiniTaskController if (TryPickPriorityQuest()) _logger.LogInformation("Using priority quest over current quest"); - (QuestSequence? seq, QuestStep? step) = GetNextStep(); - if (CurrentQuest == null || seq == null || step == null) + (QuestSequence? seq, QuestStep? step, bool createTasks) = GetNextStep(); + if (CurrentQuest == null || seq == null) { if (CurrentQuestDetails?.Progress.Quest.Id is SatisfactionSupplyNpcId && CurrentQuestDetails?.Progress.Sequence == 1 && @@ -681,7 +684,8 @@ internal sealed class QuestController : MiniTaskController CurrentQuest?.Quest.Id, CurrentQuest?.Sequence, CurrentQuest?.Step); } - return; + if (CurrentQuest == null || !createTasks) + return; } _movementController.Stop(); @@ -690,7 +694,7 @@ internal sealed class QuestController : MiniTaskController try { - foreach (var task in _taskCreator.CreateTasks(CurrentQuest.Quest, seq, step)) + foreach (var task in _taskCreator.CreateTasks(CurrentQuest.Quest, CurrentQuest.Sequence, seq, step)) _taskQueue.Enqueue(task); } catch (Exception e) diff --git a/Questionable/Controller/Steps/Shared/Gather.cs b/Questionable/Controller/Steps/Shared/Gather.cs index 31f6a9cf..04f0be3d 100644 --- a/Questionable/Controller/Steps/Shared/Gather.cs +++ b/Questionable/Controller/Steps/Shared/Gather.cs @@ -28,12 +28,12 @@ internal static class Gather foreach (var itemToGather in step.ItemsToGather) { - yield return new DelayedGatheringTask(itemToGather, quest); + yield return new DelayedGatheringTask(itemToGather, quest, (byte)sequence.Sequence); } } } - internal sealed record DelayedGatheringTask(GatheredItem GatheredItem, Quest Quest) : ITask + internal sealed record DelayedGatheringTask(GatheredItem GatheredItem, Quest Quest, byte Sequence) : ITask { public override string ToString() => $"Gathering(pending for {GatheredItem.ItemId})"; } @@ -77,7 +77,7 @@ internal static class Gather foreach (var gatheringStep in gatheringSequence.Steps) { foreach (var task in serviceProvider.GetRequiredService() - .CreateTasks(Task.Quest, gatheringSequence, gatheringStep)) + .CreateTasks(Task.Quest, Task.Sequence, gatheringSequence, gatheringStep)) if (task is WaitAtEnd.NextStep) yield return new SkipMarker(); else diff --git a/Questionable/Controller/Steps/TaskCreator.cs b/Questionable/Controller/Steps/TaskCreator.cs index 997d40d1..9df249a3 100644 --- a/Questionable/Controller/Steps/TaskCreator.cs +++ b/Questionable/Controller/Steps/TaskCreator.cs @@ -4,7 +4,9 @@ using System.Linq; using Dalamud.Plugin.Services; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; +using Questionable.Controller.Steps.Common; using Questionable.Controller.Steps.Interactions; +using Questionable.Controller.Steps.Shared; using Questionable.Data; using Questionable.Model; using Questionable.Model.Questing; @@ -16,63 +18,81 @@ internal sealed class TaskCreator private readonly IServiceProvider _serviceProvider; private readonly TerritoryData _territoryData; private readonly IClientState _clientState; + private readonly IChatGui _chatGui; private readonly ILogger _logger; public TaskCreator( IServiceProvider serviceProvider, TerritoryData territoryData, IClientState clientState, + IChatGui chatGui, ILogger logger) { _serviceProvider = serviceProvider; _territoryData = territoryData; _clientState = clientState; + _chatGui = chatGui; _logger = logger; } - public IReadOnlyList CreateTasks(Quest quest, QuestSequence sequence, QuestStep step) + public IReadOnlyList CreateTasks(Quest quest, byte sequenceNumber, QuestSequence? sequence, QuestStep? step) { - using var scope = _serviceProvider.CreateScope(); - var newTasks = scope.ServiceProvider.GetRequiredService>() - .SelectMany(x => - { - List tasks = x.CreateAllTasks(quest, sequence, step).ToList(); - - if (tasks.Count > 0 && _logger.IsEnabled(LogLevel.Trace)) + List newTasks; + if (sequence == null) + { + _chatGui.PrintError( + $"Path for quest '{quest.Info.Name}' ({quest.Id}) does not contain sequence {sequenceNumber}, please report this.", + CommandHandler.MessageTag, CommandHandler.TagColor); + newTasks = [new WaitAtEnd.WaitNextStepOrSequence()]; + } + else if (step == null) + { + newTasks = [new WaitAtEnd.WaitNextStepOrSequence()]; + } + else + { + using var scope = _serviceProvider.CreateScope(); + newTasks = scope.ServiceProvider.GetRequiredService>() + .SelectMany(x => { - string factoryName = x.GetType().FullName ?? x.GetType().Name; - if (factoryName.Contains('.', StringComparison.Ordinal)) - factoryName = factoryName[(factoryName.LastIndexOf('.') + 1)..]; + List tasks = x.CreateAllTasks(quest, sequence, step).ToList(); - _logger.LogTrace("Factory {FactoryName} created Task {TaskNames}", - factoryName, string.Join(", ", tasks.Select(y => y.ToString()))); - } + if (tasks.Count > 0 && _logger.IsEnabled(LogLevel.Trace)) + { + string factoryName = x.GetType().FullName ?? x.GetType().Name; + if (factoryName.Contains('.', StringComparison.Ordinal)) + factoryName = factoryName[(factoryName.LastIndexOf('.') + 1)..]; - return tasks; - }) - .ToList(); + _logger.LogTrace("Factory {FactoryName} created Task {TaskNames}", + factoryName, string.Join(", ", tasks.Select(y => y.ToString()))); + } - var singlePlayerDutyTask = newTasks - .Where(y => y is SinglePlayerDuty.StartSinglePlayerDuty) - .Cast() - .FirstOrDefault(); - if (singlePlayerDutyTask != null && - _territoryData.TryGetContentFinderCondition(singlePlayerDutyTask.ContentFinderConditionId, - out var cfcData)) - { - // if we have a single player duty in queue, we check if we're in the matching territory - // if yes, skip all steps before (e.g. teleporting, waiting for navmesh, moving, interacting) - if (_clientState.TerritoryType == cfcData.TerritoryId) + return tasks; + }) + .ToList(); + + var singlePlayerDutyTask = newTasks + .Where(y => y is SinglePlayerDuty.StartSinglePlayerDuty) + .Cast() + .FirstOrDefault(); + if (singlePlayerDutyTask != null && + _territoryData.TryGetContentFinderCondition(singlePlayerDutyTask.ContentFinderConditionId, + out var cfcData)) { - int index = newTasks.IndexOf(singlePlayerDutyTask); - _logger.LogWarning( - "Skipping {SkippedTaskCount} out of {TotalCount} tasks, questionable was started while in single player duty", - index + 1, newTasks.Count); + // if we have a single player duty in queue, we check if we're in the matching territory + // if yes, skip all steps before (e.g. teleporting, waiting for navmesh, moving, interacting) + if (_clientState.TerritoryType == cfcData.TerritoryId) + { + int index = newTasks.IndexOf(singlePlayerDutyTask); + _logger.LogWarning( + "Skipping {SkippedTaskCount} out of {TotalCount} tasks, questionable was started while in single player duty", + index + 1, newTasks.Count); - newTasks.RemoveRange(0, index + 1); - _logger.LogInformation("Next actual task: {NextTask}, total tasks left: {RemainingTaskCount}", - newTasks.FirstOrDefault(), - newTasks.Count); + newTasks.RemoveRange(0, index + 1); + _logger.LogInformation("Next actual task: {NextTask}, total tasks left: {RemainingTaskCount}", + newTasks.FirstOrDefault(), + newTasks.Count); + } } } @@ -81,7 +101,7 @@ internal sealed class TaskCreator else { _logger.LogInformation("Tasks for {QuestId}, {Sequence}, {Step}: {Tasks}", - quest.Id, sequence.Sequence, sequence.Steps.IndexOf(step), + quest.Id, sequenceNumber, step != null ? sequence?.Steps.IndexOf(step) : null, string.Join(", ", newTasks.Select(x => x.ToString()))); } -- 2.20.1