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 index b9a1da6a9..809210a0e 100644 --- a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4217_Armored Up.json +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4217_Armored Up.json @@ -44,19 +44,22 @@ "Y": -18.777306, "Z": 527.2946 }, + "StopDistance": 0.5, "TerritoryId": 958, - "InteractionType": "WaitForManualProgress", - "CompletionQuestVariablesFlags": [ - null, - null, - null, - null, - null, - 128 + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 14107 ], - "Comment": "Use the mount's abilities to kill the drones.", - "$.0": "0 0 0 0 0 0 -> 16 64 0 0 0 128", - "$.1": "can't find any currently extant method of automating this - could add the actions, but it's combat with the actions specifically, repeat use on targets" + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ], + "$.0": "0 0 0 0 0 0 -> 16 64 0 0 0 128" }, { "Position": { @@ -64,9 +67,21 @@ "Y": -18.937208, "Z": 338.0957 }, + "StopDistance": 0.5, "TerritoryId": 958, - "InteractionType": "WaitForManualProgress", - "Comment": "Use the mount's abilities to kill the drones." + "InteractionType": "Combat", + "EnemySpawnType": "AutoOnEnterArea", + "KillEnemyDataIds": [ + 14107 + ], + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] } ] }, @@ -74,6 +89,12 @@ "Sequence": 255, "Steps": [ { + "Position": { + "X": 135.85095, + "Y": -17.135998, + "Z": 567.8645 + }, + "StopDistance": 2000, "TerritoryId": 958, "InteractionType": "None", "Mount": false @@ -87,7 +108,8 @@ }, "TerritoryId": 958, "InteractionType": "CompleteQuest", - "Fly": true + "Fly": true, + "NextQuestId": 4218 } ] } 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 index 12e6840bb..f477359f2 100644 --- 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 @@ -30,12 +30,12 @@ "TerritoryId": 958, "InteractionType": "Interact", "CompletionQuestVariablesFlags": [ - null, - 1, - null, - null, - null, - 128 + null, + null, + null, + null, + null, + 128 ], "$": "0 0 0 0 0 0 -> 16 1 0 0 0 128" }, @@ -49,12 +49,12 @@ "TerritoryId": 958, "InteractionType": "Interact", "CompletionQuestVariablesFlags": [ - null, - 16, - null, - null, - null, - 32 + null, + null, + null, + null, + null, + 32 ], "$": "16 1 0 0 0 128 -> 32 17 0 0 0 160" }, @@ -67,7 +67,15 @@ }, "TerritoryId": 958, "InteractionType": "Interact", - "$": "32 17 0 0 0 160 -> 0 0 0 0 0 0" + "$": "32 17 0 0 0 160 -> 0 0 0 0 0 0", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 64 + ] } ] }, 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 index e80956459..09c425b01 100644 --- a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4221_Heroes All.json +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4221_Heroes All.json @@ -67,7 +67,15 @@ }, "TerritoryId": 958, "InteractionType": "Interact", - "$": "33 1 16 0 0 192 -> 0 0 0 0 0 0" + "$": "33 1 16 0 0 192 -> 0 0 0 0 0 0", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] } ] }, 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 index 062dcd91e..ded2bfd60 100644 --- a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4223_Bear Baiting.json +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4223_Bear Baiting.json @@ -75,7 +75,15 @@ "KillEnemyDataIds": [ 14104 ], - "$": "33 16 16 0 0 192 -> 0 0 0 0 0 0" + "$": "33 16 16 0 0 192 -> 0 0 0 0 0 0", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] } ] }, 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 index 16c5b261d..81796e0f0 100644 --- 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 @@ -45,12 +45,12 @@ "TerritoryId": 958, "InteractionType": "Interact", "CompletionQuestVariablesFlags": [ - null, - 128, - null, - null, - null, - 64 + null, + null, + null, + null, + null, + 64 ], "$": "0 0 0 0 0 0 -> 0 128 0 0 0 64" }, @@ -64,12 +64,12 @@ "TerritoryId": 958, "InteractionType": "Interact", "CompletionQuestVariablesFlags": [ - null, - 64, - null, - null, - null, - 32 + null, + null, + null, + null, + null, + 32 ], "$": "0 128 0 0 0 64 -> 0 192 0 0 0 96" }, @@ -83,12 +83,12 @@ "TerritoryId": 958, "InteractionType": "Interact", "CompletionQuestVariablesFlags": [ - null, - 32, - null, - null, - null, - 16 + null, + null, + null, + null, + null, + 16 ], "$": "0 192 0 0 0 96 -> 0 224 0 0 0 112" }, 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 index 03f41e4ad..db8d12479 100644 --- 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 @@ -48,12 +48,12 @@ ], "Fly": true, "CompletionQuestVariablesFlags": [ - null, - null, - null, - null, - null, - 64 + null, + null, + null, + null, + null, + 64 ], "$": "0 0 0 0 0 0 -> 0 0 0 128 0 64" }, @@ -74,12 +74,12 @@ } ], "CompletionQuestVariablesFlags": [ - null, - null, - null, - null, - null, - 32 + null, + null, + null, + null, + null, + 32 ], "$": "0 0 0 128 0 64 -> 0 0 0 192 0 96" }, @@ -91,7 +91,15 @@ "Z": -292.98853 }, "TerritoryId": 958, - "InteractionType": "Interact" + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] } ] }, 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 index b9922655e..2532ec56a 100644 --- 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 @@ -72,6 +72,7 @@ }, "TerritoryId": 958, "InteractionType": "Interact", + "Mount": true, "CompletionQuestVariablesFlags": [ null, null, @@ -91,7 +92,15 @@ }, "TerritoryId": 958, "InteractionType": "Interact", - "$": "49 16 16 0 0 224 -> 0 16 0 0 0 0" + "$": "49 16 16 0 0 224 -> 0 16 0 0 0 0", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] } ] }, 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 index 48e29f164..f1467906e 100644 --- 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 @@ -27,6 +27,28 @@ { "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": { @@ -37,12 +59,12 @@ "TerritoryId": 958, "InteractionType": "Interact", "CompletionQuestVariablesFlags": [ - null, - null, - null, - null, - null, - 64 + null, + null, + null, + null, + null, + 64 ], "$": "0 0 0 0 0 0 -> 1 32 0 0 0 64" }, @@ -63,12 +85,12 @@ } ], "CompletionQuestVariablesFlags": [ - null, - null, - null, - null, - null, - 128 + null, + null, + null, + null, + null, + 128 ], "$": "1 32 0 0 0 64 -> 2 16 0 0 0 192" }, @@ -80,7 +102,15 @@ "Z": -175.21942 }, "TerritoryId": 958, - "InteractionType": "Interact" + "InteractionType": "Interact", + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 32 + ] } ] }, 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 index 5ff36d18c..3b373719a 100644 --- 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 @@ -81,7 +81,15 @@ }, "TerritoryId": 958, "InteractionType": "UseItem", - "ItemId": 2003210 + "ItemId": 2003210, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 128 + ] } ] }, 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 index 44a0d55b8..0a4d39509 100644 --- 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 @@ -20,6 +20,29 @@ { "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": { @@ -30,17 +53,15 @@ "TerritoryId": 958, "InteractionType": "Interact", "CompletionQuestVariablesFlags": [ - null, - null, - null, - null, - null, - 128 + null, + null, + null, + null, + null, + 128 ], "$.0": "0 0 0 0 0 0 -> 1 16 0 0 0 128", - "AetheryteShortcut": "Garlemald - Tertium", - "Fly": true, - "$.1": "flight path gets stuck from camp BG, not so from tertium; walkto would probably be cleaner but this seems intuitive." + "Fly": true }, { "DataId": 2012055, @@ -52,15 +73,61 @@ "TerritoryId": 958, "InteractionType": "Interact", "CompletionQuestVariablesFlags": [ - null, - null, - null, - null, - null, - 64 + 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": { @@ -71,15 +138,15 @@ "TerritoryId": 958, "InteractionType": "Interact", "CompletionQuestVariablesFlags": [ - null, - null, - null, - null, - null, - 32 + null, + null, + null, + null, + null, + 32 ], "$.0": "2 32 0 0 0 192 -> 3 48 0 0 0 224", - "$.1": "fly also gets stuck here" + "Fly": true }, { "DataId": 2012057, @@ -88,10 +155,19 @@ "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", - "$.1": "no fly here, tries and fails to land on the railing: can't interact while flying" + "Fly": true, + "CompletionQuestVariablesFlags": [ + null, + null, + null, + null, + null, + 16 + ] } ] }, 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 index 0001b8fc8..58860c932 100644 --- 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 @@ -53,7 +53,8 @@ }, "TerritoryId": 958, "InteractionType": "CompleteQuest", - "AetheryteShortcut": "Garlemald - Camp Broken Glass" + "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 index 1332dffdf..b967ad00e 100644 --- a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4500_Operation Reactivation.json +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4500_Operation Reactivation.json @@ -71,7 +71,8 @@ "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/4503_Longing for Home.json b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4503_Longing for Home.json index 60c26c491..3c5de1a74 100644 --- 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 @@ -83,7 +83,8 @@ }, "TerritoryId": 958, "InteractionType": "CompleteQuest", - "AetheryteShortcut": "Garlemald - Tertium" + "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 index 47cf187fe..7c9f11c69 100644 --- a/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4504_Palatial Possibilities.json +++ b/QuestPaths/6.x - Endwalker/Side Quests/Garlemald/4504_Palatial Possibilities.json @@ -77,7 +77,8 @@ "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 index a9ceee1b7..6b3722c55 100644 --- 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 @@ -12,6 +12,7 @@ "Y": 23.164677, "Z": -415.36584 }, + "StopDistance": 7, "TerritoryId": 958, "InteractionType": "AcceptQuest", "Fly": true, @@ -86,7 +87,8 @@ "Answer": "TEXT_AKTKZD104_04505_A1_000_002" } ], - "AetheryteShortcut": "Garlemald - Tertium" + "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 index 63c4f8dff..34d24b885 100644 --- 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 @@ -12,6 +12,7 @@ "Y": -36.65, "Z": -132.64673 }, + "StopDistance": 5, "TerritoryId": 958, "InteractionType": "AcceptQuest", "DialogueChoices": [ diff --git a/Questionable/Controller/CombatModules/Mount128Module.cs b/Questionable/Controller/CombatModules/Mount128Module.cs index 39ef13cc3..c2f1a6f88 100644 --- a/Questionable/Controller/CombatModules/Mount128Module.cs +++ b/Questionable/Controller/CombatModules/Mount128Module.cs @@ -47,5 +47,5 @@ internal sealed class Mount128Module : ICombatModule { } - public bool CanAttack(IBattleNpc target) => target.DataId is 7504 or 7505; + public bool CanAttack(IBattleNpc target) => target.DataId is 7504 or 7505 or 14107; }