Pick up DT aether current quests (HF/LM) during the MSQ
authorLiza Carvelli <liza@carvel.li>
Mon, 26 Aug 2024 14:01:07 +0000 (16:01 +0200)
committerLiza Carvelli <liza@carvel.li>
Mon, 26 Aug 2024 14:01:07 +0000 (16:01 +0200)
14 files changed:
GatheringPaths/7.x - Dawntrail/Shaaloani/978_Pyariyoanaan Plain_MIN.json
GatheringPaths/7.x - Dawntrail/Urqopacha/974_Chabameki_MIN.json
QuestPaths/7.x - Dawntrail/Aether Currents/Heritage Found/5159_He Who Remembers.json
QuestPaths/7.x - Dawntrail/Aether Currents/Heritage Found/5160_Auntie Knows Best.json
QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4932_Embracing Oblivion.json
QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4933_Solution Nine.json
QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4941_At a Crossroads.json
QuestPaths/7.x - Dawntrail/MSQ/E-SolutionNine-HeritageFound2/4945_The Resilient Son.json
QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4951_The Land of Dreams.json
QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4953_The Sanctuary of the Strong.json
QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4956_An Explorer's Delight.json
QuestPaths/7.x - Dawntrail/MSQ/F-Living Memory/4959_Dawntrail.json
Questionable/Controller/QuestController.cs
Questionable/Controller/Steps/Interactions/Combat.cs

index ef7c642e548ecc65d80464127d5c3907cdd22224..fbb7675a1578c1433450cba60c7dc6a2618c122c 100644 (file)
                 "X": 419.309,
                 "Y": -10.25133,
                 "Z": -784.8259
-              }
+              },
+              "MinimumAngle": -25,
+              "MaximumAngle": 85
             },
             {
               "Position": {
                 "X": 410.6989,
                 "Y": -10.9656,
                 "Z": -790.8315
-              }
+              },
+              "MinimumAngle": -20,
+              "MaximumAngle": 95
             }
           ]
         }
       ]
     }
   ]
-}
+}
\ No newline at end of file
index 7dff5fe8e23cdc287b5e52b308c2e018aee48465..d103a9eab0bd1bb21a73f2734c67fb2208ce76fe 100644 (file)
@@ -52,8 +52,8 @@
                 "Y": -47.86026,
                 "Z": -394.9654
               },
-              "MinimumAngle": -120,
-              "MaximumAngle": 120
+              "MinimumAngle": -145,
+              "MaximumAngle": -95
             }
           ]
         }
       ]
     }
   ]
-}
+}
\ No newline at end of file
index 55270650c8a5e025fb9384b57bccb73c28354af7..7fdb2f05f0447962d7bcb97ffc9e2f6689bdc666 100644 (file)
     {
       "Sequence": 1,
       "Steps": [
+        {
+          "Position": {
+            "X": -392.35907,
+            "Y": -14.000012,
+            "Z": 635.3141
+          },
+          "TerritoryId": 1191,
+          "InteractionType": "WalkTo"
+        },
         {
           "Position": {
             "X": -415.87146,
index 47d856fec511a4aec097972bd033f410ca9f9ced..6957d154c37f5ec9c917e059607096fb8c1b5b58 100644 (file)
     {
       "Sequence": 255,
       "Steps": [
+        {
+          "Position": {
+            "X": 184.68884,
+            "Y": 99.24859,
+            "Z": -171.97504
+          },
+          "TerritoryId": 1191,
+          "InteractionType": "WalkTo"
+        },
+        {
+          "Position": {
+            "X": 148.14713,
+            "Y": 100.07344,
+            "Z": -135.20776
+          },
+          "TerritoryId": 1191,
+          "InteractionType": "WalkTo"
+        },
         {
           "DataId": 2013966,
           "Position": {
index a039a85a67cc721caa58b7480cbe76486f7e5f7d..0bdf93e887e13ea279c3fb8ec0e3dd95b63ee33a 100644 (file)
@@ -69,6 +69,7 @@
             "Y": 0.003171,
             "Z": 1.296936
           },
+          "StopDistance": 5,
           "TerritoryId": 1171,
           "InteractionType": "CompleteQuest"
         }
index 67d31b9bfbc7a37664f0d9929549d32de6e55b5d..747faf163c62801da15a86b07d0c4341745fb852 100644 (file)
     {
       "Sequence": 1,
       "Steps": [
+        {
+          "DataId": 1049443,
+          "Position": {
+            "X": -177.56934,
+            "Y": 29.999998,
+            "Z": -601.15967
+          },
+          "TerritoryId": 1191,
+          "InteractionType": "AcceptQuest",
+          "PickUpQuestId": 5153,
+          "AetheryteShortcut": "Heritage Found - The Outskirts",
+          "SkipConditions": {
+            "AetheryteShortcutIf": {
+              "InSameTerritory": true
+            }
+          }
+        },
+        {
+          "DataId": 1050805,
+          "Position": {
+            "X": -153.09375,
+            "Y": 34.946026,
+            "Z": -581.0178
+          },
+          "TerritoryId": 1191,
+          "InteractionType": "AcceptQuest",
+          "PickUpQuestId": 5160
+        },
         {
           "DataId": 1048053,
           "Position": {
@@ -29,8 +57,7 @@
             "Z": -828.58014
           },
           "TerritoryId": 1191,
-          "InteractionType": "Interact",
-          "AetheryteShortcut": "Heritage Found - The Outskirts"
+          "InteractionType": "Interact"
         }
       ]
     },
index 08e1e1a917a423c98ce1c95c4bd292c207f08692..b48c78efe75ee32832794b17d53033e4a1f026af 100644 (file)
     {
       "Sequence": 2,
       "Steps": [
+        {
+          "DataId": 1049505,
+          "Position": {
+            "X": -209.85736,
+            "Y": 7.49638,
+            "Z": 595.9104
+          },
+          "TerritoryId": 1191,
+          "InteractionType": "AcceptQuest",
+          "PickUpQuestId": 5159
+        },
         {
           "DataId": 1048099,
           "Position": {
     {
       "Sequence": 3,
       "Steps": [
+        {
+          "DataId": 1049501,
+          "Position": {
+            "X": -592.7062,
+            "Y": -2.4803436,
+            "Z": -489.28055
+          },
+          "TerritoryId": 1191,
+          "InteractionType": "AcceptQuest",
+          "PickUpQuestId": 5156
+        },
         {
           "DataId": 1048116,
           "Position": {
index b912c8bd33ad48ce58bdf8d6049219cf765f6ba9..bb4681d73f6e7cb28fcad2c307a1e2cf48b5fbe3 100644 (file)
@@ -32,7 +32,8 @@
             "Z": -565.48413
           },
           "TerritoryId": 1191,
-          "InteractionType": "Interact"
+          "InteractionType": "Interact",
+          "Fly": true
         }
       ]
     },
index ae4ec15804f5ba2ac57c90c2fa8027572e2f4750..15de13284762ec1b12eae16da946ca84ca8429ce 100644 (file)
     {
       "Sequence": 1,
       "Steps": [
+        {
+          "DataId": 1050617,
+          "Position": {
+            "X": -631.4031,
+            "Y": 2.9305653E-07,
+            "Z": 497.12354
+          },
+          "TerritoryId": 1192,
+          "InteractionType": "AcceptQuest",
+          "PickUpQuestId": 5174
+        },
         {
           "DataId": 1047884,
           "Position": {
index 3c29861adcd47df013751d4c29f9203f8d976644..5f5a5c5726724e46cab41a682446200be4d3156b 100644 (file)
     {
       "Sequence": 1,
       "Steps": [
+        {
+          "DataId": 1048243,
+          "Position": {
+            "X": 57.87744,
+            "Y": 53.200012,
+            "Z": 772.03015
+          },
+          "TerritoryId": 1192,
+          "InteractionType": "Interact",
+          "AetheryteShortcut": "Living Memory - Leynode Mnemo",
+          "TargetTerritoryId": 1192,
+          "SkipConditions": {
+            "StepIf": {
+              "QuestsCompleted": [
+                5176
+              ]
+            },
+            "AetheryteShortcutIf": {
+              "QuestsCompleted": [
+                5176
+              ]
+            }
+          }
+        },
+        {
+          "DataId": 1050621,
+          "Position": {
+            "X": 477.1344,
+            "Y": -0.034497976,
+            "Z": 711.6654
+          },
+          "TerritoryId": 1192,
+          "InteractionType": "AcceptQuest",
+          "PickUpQuestId": 5176
+        },
         {
           "DataId": 1047917,
           "Position": {
index 146b118c43c7dd64ecdeca79e2dd578a3589f796..2c708162480495df4f215a3640c98a004f5a6fe7 100644 (file)
     {
       "Sequence": 1,
       "Steps": [
+        {
+          "DataId": 1050625,
+          "Position": {
+            "X": 628.6869,
+            "Y": 24.99949,
+            "Z": -283.3753
+          },
+          "TerritoryId": 1192,
+          "InteractionType": "AcceptQuest",
+          "PickUpQuestId": 5178,
+          "AetheryteShortcut": "Living Memory - Leynode Pyro",
+          "SkipConditions": {
+            "AetheryteShortcutIf": {
+              "QuestsCompleted": [
+                5178
+              ]
+            }
+          }
+        },
+        {
+          "DataId": 1050632,
+          "Position": {
+            "X": 538.9944,
+            "Y": 25.001822,
+            "Z": -194.3847
+          },
+          "TerritoryId": 1192,
+          "InteractionType": "AcceptQuest",
+          "PickUpQuestId": 5179,
+          "AetheryteShortcut": "Living Memory - Leynode Pyro",
+          "SkipConditions": {
+            "AetheryteShortcutIf": {
+              "QuestsCompleted": [
+                5179
+              ]
+            }
+          }
+        },
         {
           "DataId": 1047971,
           "Position": {
index 87c4c82bf4ddc78cb9d04b41f9a9860731b32a9b..68e4c7bfd2b70c81cd91d1075b29e2ec9c400c0d 100644 (file)
           },
           "TerritoryId": 1192,
           "InteractionType": "WalkTo",
-          "AetheryteShortcut": "Living Memory - Leynode Mnemo",
-          "$": "Leynode Mnemo to Meso Terminal waypoint"
+          "$": "Leynode Mnemo to Meso Terminal waypoint",
+          "SkipConditions": {
+            "StepIf": {
+              "Flying": "Unlocked"
+            }
+          }
         },
         {
           "DataId": 1048014,
@@ -44,7 +48,8 @@
             "Z": 363.05774
           },
           "TerritoryId": 1192,
-          "InteractionType": "Interact"
+          "InteractionType": "Interact",
+          "Fly": true
         }
       ]
     },
index 529b4603ada578d8eece0ac942779d178d2feb1e..70512f8a92e6f04a9728a7ecb9fcc1e533c74154 100644 (file)
@@ -735,7 +735,9 @@ internal sealed class QuestController : MiniTaskController<QuestController>, IDi
             return false;
 
         QuestStep? currentStep = currentSequence?.FindStep(currentQuest.Step);
-        return currentStep?.AetheryteShortcut != null;
+        return currentStep?.AetheryteShortcut != null &&
+               (currentStep.SkipConditions?.AetheryteShortcutIf?.QuestsCompleted.Count ?? 0) == 0 &&
+               (currentStep.SkipConditions?.AetheryteShortcutIf?.QuestsAccepted.Count ?? 0) == 0;
     }
 
     public bool TryPickPriorityQuest()
index 108751267e1343fc9b8d74e7f1bb66bd1418b2ac..39909c569f96a7d840c4bb4761f6da6df873741f 100644 (file)
@@ -41,7 +41,7 @@ internal static class Combat
                     ArgumentNullException.ThrowIfNull(step.DataId);
 
                     yield return interactFactory.Interact(step.DataId.Value, quest, EInteractionType.None, true);
-                    yield return new WaitAtEnd.WaitDelay(TimeSpan.FromSeconds(2));
+                    yield return new WaitAtEnd.WaitDelay(TimeSpan.FromSeconds(1));
                     yield return CreateTask(quest, sequence, step);
                     break;
                 }
@@ -53,14 +53,14 @@ internal static class Combat
 
                     yield return useItemFactory.OnObject(quest.Id, step.DataId.Value, step.ItemId.Value,
                         step.CompletionQuestVariablesFlags, true);
-                    yield return new WaitAtEnd.WaitDelay(TimeSpan.FromSeconds(2));
+                    yield return new WaitAtEnd.WaitDelay(TimeSpan.FromSeconds(1));
                     yield return CreateTask(quest, sequence, step);
                     break;
                 }
 
                 case EEnemySpawnType.AutoOnEnterArea:
                     if (step.CombatDelaySecondsAtStart == null)
-                        yield return new WaitAtEnd.WaitDelay(TimeSpan.FromSeconds(2));
+                        yield return new WaitAtEnd.WaitDelay(TimeSpan.FromSeconds(1));
 
                     // automatically triggered when entering area, i.e. only unmount
                     yield return CreateTask(quest, sequence, step);