diff --git a/FatePaths/FatePaths.csproj b/FatePaths/FatePaths.csproj
new file mode 100644
index 0000000..1f0d80c
--- /dev/null
+++ b/FatePaths/FatePaths.csproj
@@ -0,0 +1,24 @@
+
+
+
+ FatePaths
+ False
+ netcoreapp1.0
+
+
+ 12.0
+ True
+
+
+
+
+
+
+
+
+
+
+ ..\..\Questionable.Model.dll
+
+
+
\ No newline at end of file
diff --git a/FatePaths/Questionable.FatePaths.FateDefinitionSchema b/FatePaths/Questionable.FatePaths.FateDefinitionSchema
new file mode 100644
index 0000000..46be76b
--- /dev/null
+++ b/FatePaths/Questionable.FatePaths.FateDefinitionSchema
@@ -0,0 +1,177 @@
+{
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
+ "$id": "https://github.com/WigglyMuffin/Questionable/raw/refs/heads/main/FatePaths/fatedefinition-v1.json",
+ "title": "FATE Definition V1",
+ "description": "A FATE farming definition",
+ "type": "object",
+ "properties": {
+ "$schema": {
+ "type": "string",
+ "const": "https://github.com/WigglyMuffin/Questionable/raw/refs/heads/main/FatePaths/fatedefinition-v1.json"
+ },
+ "Name": {
+ "description": "Display name of the FATE",
+ "type": "string"
+ },
+ "Description": {
+ "description": "Description of the FATE activity",
+ "type": "string"
+ },
+ "TerritoryId": {
+ "description": "Territory ID where the FATE takes place",
+ "type": "integer",
+ "minimum": 1
+ },
+ "Aetheryte": {
+ "description": "Nearest aetheryte for teleporting",
+ "$ref": "https://github.com/WigglyMuffin/Questionable/raw/refs/heads/main/Questionable.Model/common-aetheryte.json"
+ },
+ "Position": {
+ "description": "Position to navigate to for the FATE",
+ "$ref": "https://github.com/WigglyMuffin/Questionable/raw/refs/heads/main/Questionable.Model/common-vector3.json"
+ },
+ "Targets": {
+ "description": "List of FATE targets and actions to perform on them",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "DataId": {
+ "type": "integer",
+ "minimum": 1
+ },
+ "Action": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "DataId",
+ "Action"
+ ],
+ "additionalProperties": false
+ },
+ "minItems": 1
+ },
+ "RequiredStatusId": {
+ "description": "Status effect required to participate in the FATE",
+ "type": "string"
+ },
+ "TransformNpcDataId": {
+ "description": "NPC to interact with to obtain the required status",
+ "type": "integer",
+ "minimum": 1
+ },
+ "TransformNpcPosition": {
+ "description": "Position of the transform NPC",
+ "$ref": "https://github.com/WigglyMuffin/Questionable/raw/refs/heads/main/Questionable.Model/common-vector3.json"
+ },
+ "EventExpiry": {
+ "description": "If this is a seasonal/event FATE, the date and time (in UTC) when it is no longer available. Date-only values are treated as ending at daily reset (14:59:59 UTC).",
+ "format": "date-time",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "TransformDialogueChoices": {
+ "description": "Dialogue choices when interacting with the transform NPC",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "Type": {
+ "type": "string",
+ "enum": [
+ "YesNo",
+ "List"
+ ]
+ },
+ "ExcelSheet": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "Type"
+ ],
+ "allOf": [
+ {
+ "if": {
+ "properties": {
+ "Type": {
+ "const": "YesNo"
+ }
+ }
+ },
+ "then": {
+ "properties": {
+ "Prompt": {
+ "type": [
+ "string",
+ "integer"
+ ]
+ },
+ "PromptIsRegularExpression": {
+ "type": "boolean"
+ },
+ "Yes": {
+ "type": "boolean",
+ "default": true
+ }
+ },
+ "required": [
+ "Prompt",
+ "Yes"
+ ]
+ }
+ },
+ {
+ "if": {
+ "properties": {
+ "Type": {
+ "const": "List"
+ }
+ }
+ },
+ "then": {
+ "properties": {
+ "Prompt": {
+ "type": [
+ "string",
+ "integer",
+ "null"
+ ]
+ },
+ "PromptIsRegularExpression": {
+ "type": "boolean"
+ },
+ "Answer": {
+ "type": [
+ "string",
+ "integer"
+ ]
+ },
+ "AnswerIsRegularExpression": {
+ "type": "boolean"
+ }
+ },
+ "required": [
+ "Prompt",
+ "Answer"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "$schema",
+ "Name",
+ "Description",
+ "TerritoryId",
+ "Aetheryte",
+ "Position",
+ "Targets"
+ ],
+ "additionalProperties": false
+}
diff --git a/FatePaths/Questionable.FatePaths/AssemblyFateDefinitionLoader.cs b/FatePaths/Questionable.FatePaths/AssemblyFateDefinitionLoader.cs
new file mode 100644
index 0000000..f1ac276
--- /dev/null
+++ b/FatePaths/Questionable.FatePaths/AssemblyFateDefinitionLoader.cs
@@ -0,0 +1,109 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Numerics;
+using System.Runtime.InteropServices;
+using Questionable.Model.Common;
+using Questionable.Model.Questing;
+
+namespace Questionable.FatePaths;
+
+public static class AssemblyFateDefinitionLoader
+{
+ private static Dictionary? _definitions;
+
+ public static Stream FateDefinitionSchema => typeof(AssemblyFateDefinitionLoader).Assembly.GetManifestResourceStream("Questionable.FatePaths.FateDefinitionSchema");
+
+ public static IReadOnlyDictionary GetDefinitions()
+ {
+ if (_definitions == null)
+ {
+ _definitions = new Dictionary();
+ LoadDefinitions();
+ }
+ return _definitions ?? throw new InvalidOperationException("fate definition data is not initialized");
+ }
+
+ private static void AddDefinition(ushort id, FateDefinition definition)
+ {
+ _definitions[id] = definition;
+ }
+
+ private static void LoadDefinitions()
+ {
+ LoadDefinition0();
+ }
+
+ private static void LoadDefinition0()
+ {
+ FateDefinition obj = new FateDefinition
+ {
+ Name = "Little Ladies' Day (2026)",
+ Description = "Cheer Rhythm FATE in Ul'dah - Steps of Nald",
+ TerritoryId = 130,
+ Aetheryte = EAetheryteLocation.Uldah,
+ Position = new Vector3(-38.322124f, 3.9999998f, -144.23155f)
+ };
+ int num = 4;
+ List list = new List(num);
+ CollectionsMarshal.SetCount(list, num);
+ Span span = CollectionsMarshal.AsSpan(list);
+ int num2 = 0;
+ span[num2] = new FateActionTarget
+ {
+ DataId = 18862u,
+ Action = EAction.CheerRhythmYellow
+ };
+ num2++;
+ span[num2] = new FateActionTarget
+ {
+ DataId = 18860u,
+ Action = EAction.CheerRhythmBlue
+ };
+ num2++;
+ span[num2] = new FateActionTarget
+ {
+ DataId = 18861u,
+ Action = EAction.CheerRhythmGreen
+ };
+ num2++;
+ span[num2] = new FateActionTarget
+ {
+ DataId = 18859u,
+ Action = EAction.CheerRhythmRed
+ };
+ obj.Targets = list;
+ obj.RequiredStatusId = EStatus.FaceInTheCrowd;
+ obj.TransformNpcDataId = 1055771u;
+ obj.TransformNpcPosition = new Vector3(-37.369385f, 5.0000005f, -130.14423f);
+ num2 = 3;
+ List list2 = new List(num2);
+ CollectionsMarshal.SetCount(list2, num2);
+ Span span2 = CollectionsMarshal.AsSpan(list2);
+ num = 0;
+ span2[num] = new DialogueChoice
+ {
+ Type = EDialogChoiceType.List,
+ ExcelSheet = "custom/009/FesPdy2026FateDisguise_00951",
+ Prompt = new ExcelRef("TEXT_FESPDY2026FATEDISGUISE_00951_Q1_000_000"),
+ Answer = new ExcelRef("TEXT_FESPDY2026FATEDISGUISE_00951_A1_000_001")
+ };
+ num++;
+ span2[num] = new DialogueChoice
+ {
+ Type = EDialogChoiceType.List,
+ ExcelSheet = "custom/009/FesPdy2026FateDisguise_00951",
+ Prompt = new ExcelRef("TEXT_FESPDY2026FATEDISGUISE_00951_Q2_000_000"),
+ Answer = new ExcelRef("TEXT_FESPDY2026FATEDISGUISE_00951_A2_100_004")
+ };
+ num++;
+ span2[num] = new DialogueChoice
+ {
+ Type = EDialogChoiceType.YesNo,
+ ExcelSheet = "custom/009/FesPdy2026FateDisguise_00951",
+ Prompt = new ExcelRef("TEXT_FESPDY2026FATEDISGUISE_00951_CONFIRM_100_004")
+ };
+ obj.TransformDialogueChoices = list2;
+ AddDefinition(1, obj);
+ }
+}
diff --git a/QuestPaths/Questionable.QuestPaths.QuestSchema b/QuestPaths/Questionable.QuestPaths.QuestSchema
index dc4d130..bd8a34d 100644
--- a/QuestPaths/Questionable.QuestPaths.QuestSchema
+++ b/QuestPaths/Questionable.QuestPaths.QuestSchema
@@ -105,6 +105,9 @@
"type": "boolean",
"description": "Most interactions with objects are checked for a Y (height) difference of 2 in-game units. If set to true, the game won't attempt to get any closer if the height difference is larger than this."
},
+ "IgnoreQuestMarker": {
+ "type": "boolean"
+ },
"RestartNavigationIfCancelled": {
"type": "boolean",
"description": "For some specific loading screen transitions (e.g. when entering/leaving the water through the portals in the ruby sea), setting this to 'false' means it won't re-attempt to move to the portal after the loading animation"
@@ -153,7 +156,8 @@
"Instruction",
"AcceptQuest",
"CompleteQuest",
- "InitiateLeve"
+ "InitiateLeve",
+ "FateAction"
]
},
"Disabled": {
@@ -790,6 +794,34 @@
"additionalProperties": false
}
},
+ "FateActionTargets": {
+ "description": "List of targets with per-target actions for FateAction steps",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "DataId": {
+ "description": "The NPC data id to use the action on",
+ "type": "integer"
+ },
+ "Action": {
+ "description": "The action to use on this target",
+ "type": "string",
+ "enum": [
+ "Cheer Rhythm: Red",
+ "Cheer Rhythm: Blue",
+ "Cheer Rhythm: Green",
+ "Cheer Rhythm: Yellow"
+ ]
+ }
+ },
+ "required": [
+ "DataId",
+ "Action"
+ ],
+ "additionalProperties": false
+ }
+ },
"CombatItemUse": {
"description": "Unlike the 'AfterItemUse' condition that is used for spawning an enemy in the first place, interacting with an item at a certain stage of combat is required",
"type": "object",
@@ -1380,7 +1412,11 @@
"Shrouded Luminescence",
"Big Sneeze",
"Trickster's Treat",
- "Treater's Trick"
+ "Treater's Trick",
+ "Cheer Rhythm: Red",
+ "Cheer Rhythm: Blue",
+ "Cheer Rhythm: Green",
+ "Cheer Rhythm: Yellow"
]
}
},
@@ -1389,6 +1425,20 @@
]
}
},
+ {
+ "if": {
+ "properties": {
+ "InteractionType": {
+ "const": "FateAction"
+ }
+ }
+ },
+ "then": {
+ "required": [
+ "FateActionTargets"
+ ]
+ }
+ },
{
"if": {
"properties": {
diff --git a/QuestPaths/Questionable.QuestPaths/AssemblyQuestLoader.cs b/QuestPaths/Questionable.QuestPaths/AssemblyQuestLoader.cs
index 2911c29..73a6925 100644
--- a/QuestPaths/Questionable.QuestPaths/AssemblyQuestLoader.cs
+++ b/QuestPaths/Questionable.QuestPaths/AssemblyQuestLoader.cs
@@ -23874,16 +23874,18 @@ public static class AssemblyQuestLoader
{
QuestId questId = new QuestId(253);
QuestRoot questRoot = new QuestRoot();
- int num = 1;
+ int num = 2;
List list = new List(num);
CollectionsMarshal.SetCount(list, num);
Span span = CollectionsMarshal.AsSpan(list);
- int index = 0;
- span[index] = "liza";
+ int num2 = 0;
+ span[num2] = "liza";
+ num2++;
+ span[num2] = "Wigglez";
questRoot.Author = list;
- index = 4;
- List list2 = new List(index);
- CollectionsMarshal.SetCount(list2, index);
+ num2 = 4;
+ List list2 = new List(num2);
+ CollectionsMarshal.SetCount(list2, num2);
Span span2 = CollectionsMarshal.AsSpan(list2);
num = 0;
ref QuestSequence reference = ref span2[num];
@@ -23891,81 +23893,89 @@ public static class AssemblyQuestLoader
{
Sequence = 0
};
- int num2 = 1;
- List list3 = new List(num2);
- CollectionsMarshal.SetCount(list3, num2);
+ int num3 = 1;
+ List list3 = new List(num3);
+ CollectionsMarshal.SetCount(list3, num3);
Span span3 = CollectionsMarshal.AsSpan(list3);
- int index2 = 0;
- ref QuestStep reference2 = ref span3[index2];
+ int index = 0;
+ ref QuestStep reference2 = ref span3[index];
QuestStep obj2 = new QuestStep(EInteractionType.AcceptQuest, 1002277u, new Vector3(-97.550964f, 7.05f, 23.605652f), 131)
{
+ AetheryteShortcut = EAetheryteLocation.Uldah,
AethernetShortcut = new AethernetShortcut
{
- From = EAetheryteLocation.UldahAdventurers,
+ From = EAetheryteLocation.Uldah,
To = EAetheryteLocation.UldahGladiator
- },
- SkipConditions = new SkipConditions
- {
- AetheryteShortcutIf = new SkipAetheryteCondition
- {
- InSameTerritory = true
- }
}
};
- int num3 = 1;
- List list4 = new List(num3);
- CollectionsMarshal.SetCount(list4, num3);
- Span span4 = CollectionsMarshal.AsSpan(list4);
- int index3 = 0;
- span4[index3] = new DialogueChoice
+ SkipConditions skipConditions = new SkipConditions();
+ SkipAetheryteCondition obj3 = new SkipAetheryteCondition
+ {
+ InSameTerritory = true
+ };
+ int num4 = 1;
+ List list4 = new List(num4);
+ CollectionsMarshal.SetCount(list4, num4);
+ Span span4 = CollectionsMarshal.AsSpan(list4);
+ int index2 = 0;
+ span4[index2] = 131;
+ obj3.InTerritory = list4;
+ skipConditions.AetheryteShortcutIf = obj3;
+ obj2.SkipConditions = skipConditions;
+ index2 = 1;
+ List list5 = new List(index2);
+ CollectionsMarshal.SetCount(list5, index2);
+ Span span5 = CollectionsMarshal.AsSpan(list5);
+ num4 = 0;
+ span5[num4] = new DialogueChoice
{
Type = EDialogChoiceType.YesNo,
Prompt = new ExcelRef("TEXT_CLSGLA020_00253_Q1_000_1")
};
- obj2.DialogueChoices = list4;
+ obj2.DialogueChoices = list5;
reference2 = obj2;
obj.Steps = list3;
reference = obj;
num++;
ref QuestSequence reference3 = ref span2[num];
- QuestSequence obj3 = new QuestSequence
+ QuestSequence obj4 = new QuestSequence
{
Sequence = 1
};
- index2 = 1;
- List list5 = new List(index2);
- CollectionsMarshal.SetCount(list5, index2);
- Span span5 = CollectionsMarshal.AsSpan(list5);
- num2 = 0;
- ref QuestStep reference4 = ref span5[num2];
- QuestStep questStep = new QuestStep(EInteractionType.Interact, 1001739u, new Vector3(-94.529724f, 6.4999976f, 39.81079f), 131);
- index3 = 1;
- List list6 = new List(index3);
- CollectionsMarshal.SetCount(list6, index3);
- Span span6 = CollectionsMarshal.AsSpan(list6);
+ index = 1;
+ List list6 = new List(index);
+ CollectionsMarshal.SetCount(list6, index);
+ Span span6 = CollectionsMarshal.AsSpan(list6);
num3 = 0;
- span6[num3] = new DialogueChoice
+ ref QuestStep reference4 = ref span6[num3];
+ QuestStep questStep = new QuestStep(EInteractionType.Interact, 1001739u, new Vector3(-94.529724f, 6.4999976f, 39.81079f), 131);
+ num4 = 1;
+ List list7 = new List(num4);
+ CollectionsMarshal.SetCount(list7, num4);
+ Span span7 = CollectionsMarshal.AsSpan(list7);
+ index2 = 0;
+ span7[index2] = new DialogueChoice
{
Type = EDialogChoiceType.YesNo,
Prompt = new ExcelRef("TEXT_CLSGLA020_00253_Q2_000_1")
};
- questStep.DialogueChoices = list6;
+ questStep.DialogueChoices = list7;
reference4 = questStep;
- obj3.Steps = list5;
- reference3 = obj3;
+ obj4.Steps = list6;
+ reference3 = obj4;
num++;
ref QuestSequence reference5 = ref span2[num];
- QuestSequence obj4 = new QuestSequence
+ QuestSequence obj5 = new QuestSequence
{
Sequence = 2
};
- num2 = 4;
- List list7 = new List(num2);
- CollectionsMarshal.SetCount(list7, num2);
- Span span7 = CollectionsMarshal.AsSpan(list7);
- index2 = 0;
- ref QuestStep reference6 = ref span7[index2];
- QuestStep obj5 = new QuestStep(EInteractionType.WalkTo, null, new Vector3(45.13088f, 3.889354f, -166.51999f), 130)
+ num3 = 4;
+ List list8 = new List(num3);
+ CollectionsMarshal.SetCount(list8, num3);
+ Span span8 = CollectionsMarshal.AsSpan(list8);
+ index = 0;
+ ref QuestStep reference6 = ref span8[index];
+ QuestStep obj6 = new QuestStep(EInteractionType.WalkTo, null, new Vector3(45.13088f, 3.889354f, -166.51999f), 130)
{
AethernetShortcut = new AethernetShortcut
{
@@ -23973,68 +23983,40 @@ public static class AssemblyQuestLoader
To = EAetheryteLocation.UldahAdventurers
}
};
- SkipConditions skipConditions = new SkipConditions();
+ SkipConditions skipConditions2 = new SkipConditions();
SkipStepConditions skipStepConditions = new SkipStepConditions();
- num3 = 1;
- List list8 = new List(num3);
- CollectionsMarshal.SetCount(list8, num3);
- Span span8 = CollectionsMarshal.AsSpan(list8);
- index3 = 0;
- span8[index3] = 141;
- skipStepConditions.InTerritory = list8;
- skipConditions.StepIf = skipStepConditions;
- obj5.SkipConditions = skipConditions;
- reference6 = obj5;
- index2++;
- ref QuestStep reference7 = ref span7[index2];
- QuestStep obj6 = new QuestStep(EInteractionType.Combat, null, new Vector3(-116.10664f, 10.801613f, 276.979f), 141)
+ index2 = 1;
+ List list9 = new List(index2);
+ CollectionsMarshal.SetCount(list9, index2);
+ Span span9 = CollectionsMarshal.AsSpan(list9);
+ num4 = 0;
+ span9[num4] = 141;
+ skipStepConditions.InTerritory = list9;
+ skipConditions2.StepIf = skipStepConditions;
+ obj6.SkipConditions = skipConditions2;
+ reference6 = obj6;
+ index++;
+ ref QuestStep reference7 = ref span8[index];
+ QuestStep obj7 = new QuestStep(EInteractionType.Combat, null, new Vector3(-74.7536f, 9.131219f, 278.35217f), 141)
{
- EnemySpawnType = EEnemySpawnType.OverworldEnemies
+ DelaySecondsAtStart = 2f,
+ EnemySpawnType = EEnemySpawnType.AutoOnEnterArea
};
- index3 = 2;
- List list9 = new List(index3);
- CollectionsMarshal.SetCount(list9, index3);
- Span span9 = CollectionsMarshal.AsSpan(list9);
- num3 = 0;
- ref ComplexCombatData reference8 = ref span9[num3];
- ComplexCombatData obj7 = new ComplexCombatData
- {
- DataId = 351u,
- MinimumKillCount = 3u
- };
- int num4 = 6;
- List list10 = new List(num4);
+ num4 = 1;
+ List list10 = new List(num4);
CollectionsMarshal.SetCount(list10, num4);
- Span span10 = CollectionsMarshal.AsSpan(list10);
- int num5 = 0;
- span10[num5] = new QuestWorkValue(null, (byte)3, EQuestWorkMode.Bitwise);
- num5++;
- span10[num5] = null;
- num5++;
- span10[num5] = null;
- num5++;
- span10[num5] = null;
- num5++;
- span10[num5] = null;
- num5++;
- span10[num5] = null;
- obj7.CompletionQuestVariablesFlags = list10;
- reference8 = obj7;
- num3++;
- ref ComplexCombatData reference9 = ref span9[num3];
- ComplexCombatData obj8 = new ComplexCombatData
- {
- DataId = 141u,
- MinimumKillCount = 3u
- };
- num5 = 6;
- List list11 = new List(num5);
- CollectionsMarshal.SetCount(list11, num5);
+ Span span10 = CollectionsMarshal.AsSpan(list10);
+ index2 = 0;
+ span10[index2] = 351u;
+ obj7.KillEnemyDataIds = list10;
+ SkipConditions skipConditions3 = new SkipConditions();
+ SkipStepConditions skipStepConditions2 = new SkipStepConditions();
+ index2 = 6;
+ List list11 = new List(index2);
+ CollectionsMarshal.SetCount(list11, index2);
Span span11 = CollectionsMarshal.AsSpan(list11);
num4 = 0;
- span11[num4] = null;
- num4++;
- span11[num4] = new QuestWorkValue((byte)3, null, EQuestWorkMode.Bitwise);
+ span11[num4] = new QuestWorkValue(null, (byte)3, EQuestWorkMode.Bitwise);
num4++;
span11[num4] = null;
num4++;
@@ -24043,110 +24025,164 @@ public static class AssemblyQuestLoader
span11[num4] = null;
num4++;
span11[num4] = null;
- obj8.CompletionQuestVariablesFlags = list11;
- reference9 = obj8;
- obj6.ComplexCombatData = list9;
- num3 = 6;
- List list12 = new List(num3);
- CollectionsMarshal.SetCount(list12, num3);
+ num4++;
+ span11[num4] = null;
+ skipStepConditions2.CompletionQuestVariablesFlags = list11;
+ skipConditions3.StepIf = skipStepConditions2;
+ obj7.SkipConditions = skipConditions3;
+ num4 = 6;
+ List list12 = new List(num4);
+ CollectionsMarshal.SetCount(list12, num4);
Span span12 = CollectionsMarshal.AsSpan(list12);
- index3 = 0;
- span12[index3] = new QuestWorkValue(null, (byte)3, EQuestWorkMode.Bitwise);
- index3++;
- span12[index3] = new QuestWorkValue((byte)3, null, EQuestWorkMode.Bitwise);
- index3++;
- span12[index3] = null;
- index3++;
- span12[index3] = null;
- index3++;
- span12[index3] = null;
- index3++;
- span12[index3] = null;
- obj6.CompletionQuestVariablesFlags = list12;
- reference7 = obj6;
+ index2 = 0;
+ span12[index2] = new QuestWorkValue(null, (byte)3, EQuestWorkMode.Bitwise);
index2++;
- ref QuestStep reference10 = ref span7[index2];
- QuestStep obj9 = new QuestStep(EInteractionType.Combat, null, new Vector3(39.635372f, 3.2401803f, 273.41232f), 141)
+ span12[index2] = null;
+ index2++;
+ span12[index2] = null;
+ index2++;
+ span12[index2] = null;
+ index2++;
+ span12[index2] = null;
+ index2++;
+ span12[index2] = null;
+ obj7.CompletionQuestVariablesFlags = list12;
+ reference7 = obj7;
+ index++;
+ ref QuestStep reference8 = ref span8[index];
+ QuestStep obj8 = new QuestStep(EInteractionType.Combat, null, new Vector3(-74.7536f, 9.131219f, 278.35217f), 141)
{
- EnemySpawnType = EEnemySpawnType.OverworldEnemies
- };
- index3 = 1;
- List list13 = new List(index3);
- CollectionsMarshal.SetCount(list13, index3);
- Span span13 = CollectionsMarshal.AsSpan(list13);
- num3 = 0;
- ref ComplexCombatData reference11 = ref span13[num3];
- ComplexCombatData obj10 = new ComplexCombatData
- {
- DataId = 205u,
- MinimumKillCount = 3u
+ DelaySecondsAtStart = 2f,
+ EnemySpawnType = EEnemySpawnType.AutoOnEnterArea
};
+ index2 = 1;
+ List list13 = new List(index2);
+ CollectionsMarshal.SetCount(list13, index2);
+ Span span13 = CollectionsMarshal.AsSpan(list13);
+ num4 = 0;
+ span13[num4] = 385u;
+ obj8.KillEnemyDataIds = list13;
+ SkipConditions skipConditions4 = new SkipConditions();
+ SkipStepConditions skipStepConditions3 = new SkipStepConditions();
num4 = 6;
List list14 = new List(num4);
CollectionsMarshal.SetCount(list14, num4);
Span span14 = CollectionsMarshal.AsSpan(list14);
- num5 = 0;
- span14[num5] = null;
- num5++;
- span14[num5] = new QuestWorkValue(null, (byte)3, EQuestWorkMode.Bitwise);
- num5++;
- span14[num5] = null;
- num5++;
- span14[num5] = null;
- num5++;
- span14[num5] = null;
- num5++;
- span14[num5] = null;
- obj10.CompletionQuestVariablesFlags = list14;
- reference11 = obj10;
- obj9.ComplexCombatData = list13;
- num3 = 6;
- List list15 = new List(num3);
- CollectionsMarshal.SetCount(list15, num3);
- Span span15 = CollectionsMarshal.AsSpan(list15);
- index3 = 0;
- span15[index3] = null;
- index3++;
- span15[index3] = new QuestWorkValue(null, (byte)3, EQuestWorkMode.Bitwise);
- index3++;
- span15[index3] = null;
- index3++;
- span15[index3] = null;
- index3++;
- span15[index3] = null;
- index3++;
- span15[index3] = null;
- obj9.CompletionQuestVariablesFlags = list15;
- reference10 = obj9;
+ index2 = 0;
+ span14[index2] = null;
index2++;
- ref QuestStep reference12 = ref span7[index2];
- QuestStep questStep2 = new QuestStep(EInteractionType.WalkTo, null, new Vector3(-118.17538f, 18.35357f, 341.3039f), 141);
- SkipConditions skipConditions2 = new SkipConditions();
- SkipStepConditions skipStepConditions2 = new SkipStepConditions();
- index3 = 1;
- List list16 = new List(index3);
- CollectionsMarshal.SetCount(list16, index3);
- Span span16 = CollectionsMarshal.AsSpan(list16);
- num3 = 0;
- span16[num3] = 141;
- skipStepConditions2.NotInTerritory = list16;
- skipConditions2.StepIf = skipStepConditions2;
- questStep2.SkipConditions = skipConditions2;
- reference12 = questStep2;
- obj4.Steps = list7;
- reference5 = obj4;
+ span14[index2] = new QuestWorkValue((byte)3, null, EQuestWorkMode.Bitwise);
+ index2++;
+ span14[index2] = null;
+ index2++;
+ span14[index2] = null;
+ index2++;
+ span14[index2] = null;
+ index2++;
+ span14[index2] = null;
+ skipStepConditions3.CompletionQuestVariablesFlags = list14;
+ skipConditions4.StepIf = skipStepConditions3;
+ obj8.SkipConditions = skipConditions4;
+ index2 = 6;
+ List list15 = new List(index2);
+ CollectionsMarshal.SetCount(list15, index2);
+ Span span15 = CollectionsMarshal.AsSpan(list15);
+ num4 = 0;
+ span15[num4] = null;
+ num4++;
+ span15[num4] = new QuestWorkValue((byte)3, null, EQuestWorkMode.Bitwise);
+ num4++;
+ span15[num4] = null;
+ num4++;
+ span15[num4] = null;
+ num4++;
+ span15[num4] = null;
+ num4++;
+ span15[num4] = null;
+ obj8.CompletionQuestVariablesFlags = list15;
+ reference8 = obj8;
+ index++;
+ ref QuestStep reference9 = ref span8[index];
+ QuestStep obj9 = new QuestStep(EInteractionType.Combat, null, new Vector3(27.49698f, -1.0683776f, 207.4475f), 141)
+ {
+ DelaySecondsAtStart = 2f,
+ EnemySpawnType = EEnemySpawnType.AutoOnEnterArea
+ };
+ num4 = 1;
+ List list16 = new List(num4);
+ CollectionsMarshal.SetCount(list16, num4);
+ Span span16 = CollectionsMarshal.AsSpan(list16);
+ index2 = 0;
+ span16[index2] = 205u;
+ obj9.KillEnemyDataIds = list16;
+ SkipConditions skipConditions5 = new SkipConditions();
+ SkipStepConditions skipStepConditions4 = new SkipStepConditions();
+ index2 = 6;
+ List list17 = new List(index2);
+ CollectionsMarshal.SetCount(list17, index2);
+ Span span17 = CollectionsMarshal.AsSpan(list17);
+ num4 = 0;
+ span17[num4] = null;
+ num4++;
+ span17[num4] = new QuestWorkValue(null, (byte)3, EQuestWorkMode.Bitwise);
+ num4++;
+ span17[num4] = null;
+ num4++;
+ span17[num4] = null;
+ num4++;
+ span17[num4] = null;
+ num4++;
+ span17[num4] = null;
+ skipStepConditions4.CompletionQuestVariablesFlags = list17;
+ skipConditions5.StepIf = skipStepConditions4;
+ obj9.SkipConditions = skipConditions5;
+ num4 = 6;
+ List list18 = new List(num4);
+ CollectionsMarshal.SetCount(list18, num4);
+ Span span18 = CollectionsMarshal.AsSpan(list18);
+ index2 = 0;
+ span18[index2] = null;
+ index2++;
+ span18[index2] = new QuestWorkValue(null, (byte)3, EQuestWorkMode.Bitwise);
+ index2++;
+ span18[index2] = null;
+ index2++;
+ span18[index2] = null;
+ index2++;
+ span18[index2] = null;
+ index2++;
+ span18[index2] = null;
+ obj9.CompletionQuestVariablesFlags = list18;
+ reference9 = obj9;
+ obj5.Steps = list8;
+ reference5 = obj5;
num++;
- ref QuestSequence reference13 = ref span2[num];
- QuestSequence obj11 = new QuestSequence
+ ref QuestSequence reference10 = ref span2[num];
+ QuestSequence obj10 = new QuestSequence
{
Sequence = byte.MaxValue
};
+ index = 2;
+ List list19 = new List(index);
+ CollectionsMarshal.SetCount(list19, index);
+ Span span19 = CollectionsMarshal.AsSpan(list19);
+ num3 = 0;
+ ref QuestStep reference11 = ref span19[num3];
+ QuestStep questStep2 = new QuestStep(EInteractionType.WalkTo, null, new Vector3(-118.17538f, 18.35357f, 341.3039f), 141);
+ SkipConditions skipConditions6 = new SkipConditions();
+ SkipStepConditions skipStepConditions5 = new SkipStepConditions();
index2 = 1;
- List list17 = new List(index2);
- CollectionsMarshal.SetCount(list17, index2);
- Span span17 = CollectionsMarshal.AsSpan(list17);
- num2 = 0;
- span17[num2] = new QuestStep(EInteractionType.CompleteQuest, 1001739u, new Vector3(-94.529724f, 6.4999976f, 39.81079f), 131)
+ List list20 = new List(index2);
+ CollectionsMarshal.SetCount(list20, index2);
+ Span span20 = CollectionsMarshal.AsSpan(list20);
+ num4 = 0;
+ span20[num4] = 141;
+ skipStepConditions5.NotInTerritory = list20;
+ skipConditions6.StepIf = skipStepConditions5;
+ questStep2.SkipConditions = skipConditions6;
+ reference11 = questStep2;
+ num3++;
+ span19[num3] = new QuestStep(EInteractionType.CompleteQuest, 1001739u, new Vector3(-94.529724f, 6.4999976f, 39.81079f), 131)
{
AethernetShortcut = new AethernetShortcut
{
@@ -24155,668 +24191,36 @@ public static class AssemblyQuestLoader
},
NextQuestId = new QuestId(256)
};
- obj11.Steps = list17;
- reference13 = obj11;
+ obj10.Steps = list19;
+ reference10 = obj10;
questRoot.QuestSequence = list2;
AddQuest(questId, questRoot);
QuestId questId2 = new QuestId(256);
QuestRoot questRoot2 = new QuestRoot();
num = 1;
- List list18 = new List(num);
- CollectionsMarshal.SetCount(list18, num);
- Span span18 = CollectionsMarshal.AsSpan(list18);
- index = 0;
- span18[index] = "liza";
- questRoot2.Author = list18;
- index = 9;
- List list19 = new List(index);
- CollectionsMarshal.SetCount(list19, index);
- Span span19 = CollectionsMarshal.AsSpan(list19);
+ List list21 = new List(num);
+ CollectionsMarshal.SetCount(list21, num);
+ Span span21 = CollectionsMarshal.AsSpan(list21);
+ num2 = 0;
+ span21[num2] = "liza";
+ questRoot2.Author = list21;
+ num2 = 9;
+ List list22 = new List(num2);
+ CollectionsMarshal.SetCount(list22, num2);
+ Span span22 = CollectionsMarshal.AsSpan(list22);
num = 0;
- ref QuestSequence reference14 = ref span19[num];
- QuestSequence obj12 = new QuestSequence
+ ref QuestSequence reference12 = ref span22[num];
+ QuestSequence obj11 = new QuestSequence
{
Sequence = 0
};
- num2 = 1;
- List list20 = new List(num2);
- CollectionsMarshal.SetCount(list20, num2);
- Span span20 = CollectionsMarshal.AsSpan(list20);
- index2 = 0;
- ref QuestStep reference15 = ref span20[index2];
- QuestStep obj13 = new QuestStep(EInteractionType.AcceptQuest, 1001739u, new Vector3(-94.529724f, 6.4999976f, 39.81079f), 131)
- {
- AetheryteShortcut = EAetheryteLocation.Uldah,
- AethernetShortcut = new AethernetShortcut
- {
- From = EAetheryteLocation.Uldah,
- To = EAetheryteLocation.UldahGladiator
- }
- };
- SkipConditions skipConditions3 = new SkipConditions();
- SkipAetheryteCondition obj14 = new SkipAetheryteCondition
- {
- InSameTerritory = true
- };
num3 = 1;
- List list21 = new List(num3);
- CollectionsMarshal.SetCount(list21, num3);
- Span span21 = CollectionsMarshal.AsSpan(list21);
- index3 = 0;
- span21[index3] = 131;
- obj14.InTerritory = list21;
- skipConditions3.AetheryteShortcutIf = obj14;
- obj13.SkipConditions = skipConditions3;
- reference15 = obj13;
- obj12.Steps = list20;
- reference14 = obj12;
- num++;
- ref QuestSequence reference16 = ref span19[num];
- QuestSequence obj15 = new QuestSequence
- {
- Sequence = 1
- };
- index2 = 4;
- List list22 = new List(index2);
- CollectionsMarshal.SetCount(list22, index2);
- Span span22 = CollectionsMarshal.AsSpan(list22);
- num2 = 0;
- ref QuestStep reference17 = ref span22[num2];
- QuestStep obj16 = new QuestStep(EInteractionType.Emote, 1003990u, new Vector3(77.25635f, 4.0999947f, -138.62823f), 130)
- {
- AethernetShortcut = new AethernetShortcut
- {
- From = EAetheryteLocation.UldahGladiator,
- To = EAetheryteLocation.UldahAdventurers
- },
- Emote = EEmote.Me
- };
- index3 = 6;
- List list23 = new List(index3);
- CollectionsMarshal.SetCount(list23, index3);
- Span span23 = CollectionsMarshal.AsSpan(list23);
- num3 = 0;
- span23[num3] = null;
- num3++;
- span23[num3] = null;
- num3++;
- span23[num3] = null;
- num3++;
- span23[num3] = null;
- num3++;
- span23[num3] = null;
- num3++;
- span23[num3] = new QuestWorkValue((byte)4, 0, EQuestWorkMode.Bitwise);
- obj16.CompletionQuestVariablesFlags = list23;
- reference17 = obj16;
- num2++;
- ref QuestStep reference18 = ref span22[num2];
- QuestStep obj17 = new QuestStep(EInteractionType.Emote, 1003984u, new Vector3(45.029297f, 3.9999998f, -128.16058f), 130)
- {
- Emote = EEmote.Me
- };
- num3 = 6;
- List list24 = new List(num3);
- CollectionsMarshal.SetCount(list24, num3);
- Span span24 = CollectionsMarshal.AsSpan(list24);
- index3 = 0;
- span24[index3] = null;
- index3++;
- span24[index3] = null;
- index3++;
- span24[index3] = null;
- index3++;
- span24[index3] = null;
- index3++;
- span24[index3] = null;
- index3++;
- span24[index3] = new QuestWorkValue((byte)8, 0, EQuestWorkMode.Bitwise);
- obj17.CompletionQuestVariablesFlags = list24;
- reference18 = obj17;
- num2++;
- ref QuestStep reference19 = ref span22[num2];
- QuestStep obj18 = new QuestStep(EInteractionType.Emote, 1003992u, new Vector3(12.191956f, 4.0999947f, -155.53528f), 130)
- {
- Emote = EEmote.Me
- };
- index3 = 6;
- List list25 = new List(index3);
- CollectionsMarshal.SetCount(list25, index3);
- Span span25 = CollectionsMarshal.AsSpan(list25);
- num3 = 0;
- span25[num3] = null;
- num3++;
- span25[num3] = null;
- num3++;
- span25[num3] = null;
- num3++;
- span25[num3] = null;
- num3++;
- span25[num3] = null;
- num3++;
- span25[num3] = new QuestWorkValue((byte)2, 0, EQuestWorkMode.Bitwise);
- obj18.CompletionQuestVariablesFlags = list25;
- reference19 = obj18;
- num2++;
- ref QuestStep reference20 = ref span22[num2];
- QuestStep obj19 = new QuestStep(EInteractionType.Emote, 1003994u, new Vector3(15.976135f, 7.9999995f, -124.071106f), 130)
- {
- Emote = EEmote.Me
- };
- num3 = 6;
- List list26 = new List(num3);
- CollectionsMarshal.SetCount(list26, num3);
- Span span26 = CollectionsMarshal.AsSpan(list26);
- index3 = 0;
- span26[index3] = null;
- index3++;
- span26[index3] = null;
- index3++;
- span26[index3] = null;
- index3++;
- span26[index3] = null;
- index3++;
- span26[index3] = null;
- index3++;
- span26[index3] = new QuestWorkValue((byte)1, 0, EQuestWorkMode.Bitwise);
- obj19.CompletionQuestVariablesFlags = list26;
- reference20 = obj19;
- obj15.Steps = list22;
- reference16 = obj15;
- num++;
- ref QuestSequence reference21 = ref span19[num];
- QuestSequence obj20 = new QuestSequence
- {
- Sequence = 2
- };
- num2 = 1;
- List list27 = new List(num2);
- CollectionsMarshal.SetCount(list27, num2);
- Span span27 = CollectionsMarshal.AsSpan(list27);
- index2 = 0;
- span27[index2] = new QuestStep(EInteractionType.Emote, 1004222u, new Vector3(21.927185f, 7.1999974f, -97.39838f), 130)
- {
- Emote = EEmote.Me
- };
- obj20.Steps = list27;
- reference21 = obj20;
- num++;
- ref QuestSequence reference22 = ref span19[num];
- QuestSequence obj21 = new QuestSequence
- {
- Sequence = 3
- };
- index2 = 1;
- List list28 = new List(index2);
- CollectionsMarshal.SetCount(list28, index2);
- Span span28 = CollectionsMarshal.AsSpan(list28);
- num2 = 0;
- span28[num2] = new QuestStep(EInteractionType.Interact, 1001353u, new Vector3(21.072632f, 7.45f, -78.78235f), 130);
- obj21.Steps = list28;
- reference22 = obj21;
- num++;
- ref QuestSequence reference23 = ref span19[num];
- QuestSequence obj22 = new QuestSequence
- {
- Sequence = 4
- };
- num2 = 1;
- List list29 = new List(num2);
- CollectionsMarshal.SetCount(list29, num2);
- Span span29 = CollectionsMarshal.AsSpan(list29);
- index2 = 0;
- span29[index2] = new QuestStep(EInteractionType.Interact, 1001739u, new Vector3(-94.529724f, 6.4999976f, 39.81079f), 131)
- {
- AethernetShortcut = new AethernetShortcut
- {
- From = EAetheryteLocation.UldahAdventurers,
- To = EAetheryteLocation.UldahGladiator
- }
- };
- obj22.Steps = list29;
- reference23 = obj22;
- num++;
- ref QuestSequence reference24 = ref span19[num];
- QuestSequence obj23 = new QuestSequence
- {
- Sequence = 5
- };
- index2 = 3;
- List list30 = new List(index2);
- CollectionsMarshal.SetCount(list30, index2);
- Span span30 = CollectionsMarshal.AsSpan(list30);
- num2 = 0;
- span30[num2] = new QuestStep(EInteractionType.WalkTo, null, new Vector3(-112.70276f, 7.7544775f, 9.123527f), 131);
- num2++;
- span30[num2] = new QuestStep(EInteractionType.WalkTo, null, new Vector3(-183.00035f, 13.958975f, -13.998203f), 130);
- num2++;
- span30[num2] = new QuestStep(EInteractionType.Interact, 1003985u, new Vector3(201.52588f, 52.038116f, 149.40112f), 140);
- obj23.Steps = list30;
- reference24 = obj23;
- num++;
- ref QuestSequence reference25 = ref span19[num];
- QuestSequence obj24 = new QuestSequence
- {
- Sequence = 6
- };
- num2 = 2;
- List list31 = new List(num2);
- CollectionsMarshal.SetCount(list31, num2);
- Span span31 = CollectionsMarshal.AsSpan(list31);
- index2 = 0;
- ref QuestStep reference26 = ref span31[index2];
- QuestStep obj25 = new QuestStep(EInteractionType.Combat, 2001408u, new Vector3(154.37549f, 52.536743f, 200.91553f), 140)
- {
- EnemySpawnType = EEnemySpawnType.AfterInteraction
- };
- index3 = 1;
- List list32 = new List(index3);
- CollectionsMarshal.SetCount(list32, index3);
- Span span32 = CollectionsMarshal.AsSpan(list32);
- num3 = 0;
- span32[num3] = 1246u;
- obj25.KillEnemyDataIds = list32;
- num3 = 6;
- List list33 = new List(num3);
- CollectionsMarshal.SetCount(list33, num3);
- Span span33 = CollectionsMarshal.AsSpan(list33);
- index3 = 0;
- span33[index3] = null;
- index3++;
- span33[index3] = null;
- index3++;
- span33[index3] = null;
- index3++;
- span33[index3] = null;
- index3++;
- span33[index3] = null;
- index3++;
- span33[index3] = new QuestWorkValue((byte)8, 0, EQuestWorkMode.Bitwise);
- obj25.CompletionQuestVariablesFlags = list33;
- reference26 = obj25;
- index2++;
- ref QuestStep reference27 = ref span31[index2];
- QuestStep obj26 = new QuestStep(EInteractionType.Combat, 2001409u, new Vector3(141.83252f, 52.994507f, 221.54565f), 140)
- {
- EnemySpawnType = EEnemySpawnType.AfterInteraction
- };
- index3 = 1;
- List list34 = new List(index3);
- CollectionsMarshal.SetCount(list34, index3);
- Span span34 = CollectionsMarshal.AsSpan(list34);
- num3 = 0;
- span34[num3] = 1390u;
- obj26.KillEnemyDataIds = list34;
- num3 = 6;
- List list35 = new List(num3);
- CollectionsMarshal.SetCount(list35, num3);
- Span span35 = CollectionsMarshal.AsSpan(list35);
- index3 = 0;
- span35[index3] = null;
- index3++;
- span35[index3] = null;
- index3++;
- span35[index3] = null;
- index3++;
- span35[index3] = null;
- index3++;
- span35[index3] = null;
- index3++;
- span35[index3] = new QuestWorkValue((byte)4, 0, EQuestWorkMode.Bitwise);
- obj26.CompletionQuestVariablesFlags = list35;
- reference27 = obj26;
- obj24.Steps = list31;
- reference25 = obj24;
- num++;
- ref QuestSequence reference28 = ref span19[num];
- QuestSequence obj27 = new QuestSequence
- {
- Sequence = 7
- };
- index2 = 1;
- List list36 = new List(index2);
- CollectionsMarshal.SetCount(list36, index2);
- Span span36 = CollectionsMarshal.AsSpan(list36);
- num2 = 0;
- span36[num2] = new QuestStep(EInteractionType.Interact, 1003985u, new Vector3(201.52588f, 52.038116f, 149.40112f), 140);
- obj27.Steps = list36;
- reference28 = obj27;
- num++;
- ref QuestSequence reference29 = ref span19[num];
- QuestSequence obj28 = new QuestSequence
- {
- Sequence = byte.MaxValue
- };
- num2 = 3;
- List list37 = new List(num2);
- CollectionsMarshal.SetCount(list37, num2);
- Span span37 = CollectionsMarshal.AsSpan(list37);
- index2 = 0;
- span37[index2] = new QuestStep(EInteractionType.WalkTo, null, new Vector3(473.74796f, 96.62057f, 159.993f), 140);
- index2++;
- span37[index2] = new QuestStep(EInteractionType.WalkTo, null, new Vector3(-117.06801f, 9.195247f, 9.181297f), 130);
- index2++;
- span37[index2] = new QuestStep(EInteractionType.CompleteQuest, 1001739u, new Vector3(-94.529724f, 6.4999976f, 39.81079f), 131);
- obj28.Steps = list37;
- reference29 = obj28;
- questRoot2.QuestSequence = list19;
- AddQuest(questId2, questRoot2);
- QuestId questId3 = new QuestId(261);
- QuestRoot questRoot3 = new QuestRoot();
- num = 1;
- List list38 = new List(num);
- CollectionsMarshal.SetCount(list38, num);
- Span span38 = CollectionsMarshal.AsSpan(list38);
+ List list23 = new List(num3);
+ CollectionsMarshal.SetCount(list23, num3);
+ Span span23 = CollectionsMarshal.AsSpan(list23);
index = 0;
- span38[index] = "Cacahuetes";
- questRoot3.Author = list38;
- index = 7;
- List list39 = new List(index);
- CollectionsMarshal.SetCount(list39, index);
- Span span39 = CollectionsMarshal.AsSpan(list39);
- num = 0;
- ref QuestSequence reference30 = ref span39[num];
- QuestSequence obj29 = new QuestSequence
- {
- Sequence = 0
- };
- index2 = 1;
- List list40 = new List(index2);
- CollectionsMarshal.SetCount(list40, index2);
- Span span40 = CollectionsMarshal.AsSpan(list40);
- num2 = 0;
- ref QuestStep reference31 = ref span40[num2];
- QuestStep obj30 = new QuestStep(EInteractionType.AcceptQuest, 1001739u, new Vector3(-94.529724f, 6.4999976f, 39.81079f), 131)
- {
- AetheryteShortcut = EAetheryteLocation.Uldah,
- AethernetShortcut = new AethernetShortcut
- {
- From = EAetheryteLocation.Uldah,
- To = EAetheryteLocation.UldahGladiator
- }
- };
- SkipConditions skipConditions4 = new SkipConditions();
- SkipAetheryteCondition obj31 = new SkipAetheryteCondition
- {
- InSameTerritory = true
- };
- index3 = 1;
- List list41 = new List(index3);
- CollectionsMarshal.SetCount(list41, index3);
- Span span41 = CollectionsMarshal.AsSpan(list41);
- num3 = 0;
- span41[num3] = 131;
- obj31.InTerritory = list41;
- skipConditions4.AetheryteShortcutIf = obj31;
- obj30.SkipConditions = skipConditions4;
- reference31 = obj30;
- obj29.Steps = list40;
- reference30 = obj29;
- num++;
- ref QuestSequence reference32 = ref span39[num];
- QuestSequence obj32 = new QuestSequence
- {
- Sequence = 1
- };
- num2 = 1;
- List list42 = new List(num2);
- CollectionsMarshal.SetCount(list42, num2);
- Span span42 = CollectionsMarshal.AsSpan(list42);
- index2 = 0;
- ref QuestStep reference33 = ref span42[index2];
- QuestStep obj33 = new QuestStep(EInteractionType.Combat, 1002296u, new Vector3(-139.42175f, 4.019726f, 205.0354f), 141)
- {
- AethernetShortcut = new AethernetShortcut
- {
- From = EAetheryteLocation.UldahGladiator,
- To = EAetheryteLocation.UldahGateOfNald
- },
- EnemySpawnType = EEnemySpawnType.AfterInteraction
- };
- num3 = 1;
- List list43 = new List(num3);
- CollectionsMarshal.SetCount(list43, num3);
- Span span43 = CollectionsMarshal.AsSpan(list43);
- index3 = 0;
- span43[index3] = 1245u;
- obj33.KillEnemyDataIds = list43;
- reference33 = obj33;
- obj32.Steps = list42;
- reference32 = obj32;
- num++;
- ref QuestSequence reference34 = ref span39[num];
- QuestSequence obj34 = new QuestSequence
- {
- Sequence = 2
- };
- index2 = 1;
- List list44 = new List(index2);
- CollectionsMarshal.SetCount(list44, index2);
- Span span44 = CollectionsMarshal.AsSpan(list44);
- num2 = 0;
- span44[num2] = new QuestStep(EInteractionType.Interact, 1002296u, new Vector3(-139.42175f, 4.019726f, 205.0354f), 141);
- obj34.Steps = list44;
- reference34 = obj34;
- num++;
- ref QuestSequence reference35 = ref span39[num];
- QuestSequence obj35 = new QuestSequence
- {
- Sequence = 3
- };
- num2 = 1;
- List list45 = new List(num2);
- CollectionsMarshal.SetCount(list45, num2);
- Span span45 = CollectionsMarshal.AsSpan(list45);
- index2 = 0;
- ref QuestStep reference36 = ref span45[index2];
- QuestStep obj36 = new QuestStep(EInteractionType.Interact, 1001739u, new Vector3(-94.529724f, 6.4999976f, 39.81079f), 131)
- {
- AetheryteShortcut = EAetheryteLocation.Uldah,
- AethernetShortcut = new AethernetShortcut
- {
- From = EAetheryteLocation.Uldah,
- To = EAetheryteLocation.UldahGladiator
- }
- };
- SkipConditions skipConditions5 = new SkipConditions();
- SkipAetheryteCondition obj37 = new SkipAetheryteCondition
- {
- InSameTerritory = true
- };
- index3 = 1;
- List list46 = new List(index3);
- CollectionsMarshal.SetCount(list46, index3);
- Span span46 = CollectionsMarshal.AsSpan(list46);
- num3 = 0;
- span46[num3] = 131;
- obj37.InTerritory = list46;
- skipConditions5.AetheryteShortcutIf = obj37;
- obj36.SkipConditions = skipConditions5;
- reference36 = obj36;
- obj35.Steps = list45;
- reference35 = obj35;
- num++;
- ref QuestSequence reference37 = ref span39[num];
- QuestSequence obj38 = new QuestSequence
- {
- Sequence = 4
- };
- index2 = 1;
- List list47 = new List(index2);
- CollectionsMarshal.SetCount(list47, index2);
- Span span47 = CollectionsMarshal.AsSpan(list47);
- num2 = 0;
- span47[num2] = new QuestStep(EInteractionType.SinglePlayerDuty, 2001426u, new Vector3(27.206787f, 12.985352f, 51.83484f), 141)
- {
- AethernetShortcut = new AethernetShortcut
- {
- From = EAetheryteLocation.UldahGladiator,
- To = EAetheryteLocation.UldahGateOfNald
- }
- };
- obj38.Steps = list47;
- reference37 = obj38;
- num++;
- ref QuestSequence reference38 = ref span39[num];
- QuestSequence obj39 = new QuestSequence
- {
- Sequence = 5
- };
- num2 = 1;
- List list48 = new List(num2);
- CollectionsMarshal.SetCount(list48, num2);
- Span span48 = CollectionsMarshal.AsSpan(list48);
- index2 = 0;
- span48[index2] = new QuestStep(EInteractionType.Interact, 1003945u, new Vector3(24.917969f, 13f, 50.156372f), 141)
- {
- StopDistance = 5f
- };
- obj39.Steps = list48;
- reference38 = obj39;
- num++;
- ref QuestSequence reference39 = ref span39[num];
- QuestSequence obj40 = new QuestSequence
- {
- Sequence = byte.MaxValue
- };
- index2 = 1;
- List list49 = new List(index2);
- CollectionsMarshal.SetCount(list49, index2);
- Span span49 = CollectionsMarshal.AsSpan(list49);
- num2 = 0;
- ref QuestStep reference40 = ref span49[num2];
- QuestStep obj41 = new QuestStep(EInteractionType.CompleteQuest, 1001739u, new Vector3(-94.529724f, 6.4999976f, 39.81079f), 131)
- {
- AetheryteShortcut = EAetheryteLocation.Uldah,
- AethernetShortcut = new AethernetShortcut
- {
- From = EAetheryteLocation.Uldah,
- To = EAetheryteLocation.UldahGladiator
- }
- };
- num3 = 1;
- List list50 = new List(num3);
- CollectionsMarshal.SetCount(list50, num3);
- Span span50 = CollectionsMarshal.AsSpan(list50);
- index3 = 0;
- span50[index3] = new DialogueChoice
- {
- Type = EDialogChoiceType.List,
- Prompt = new ExcelRef("TEXT_CLSGLA100_00261_Q1_000_160"),
- Answer = new ExcelRef("TEXT_CLSGLA100_00261_A1_000_161")
- };
- obj41.DialogueChoices = list50;
- obj41.NextQuestId = new QuestId(262);
- reference40 = obj41;
- obj40.Steps = list49;
- reference39 = obj40;
- questRoot3.QuestSequence = list39;
- AddQuest(questId3, questRoot3);
- QuestId questId4 = new QuestId(262);
- QuestRoot questRoot4 = new QuestRoot();
- num = 1;
- List list51 = new List(num);
- CollectionsMarshal.SetCount(list51, num);
- Span span51 = CollectionsMarshal.AsSpan(list51);
- index = 0;
- span51[index] = "Cacahuetes";
- questRoot4.Author = list51;
- index = 6;
- List list52 = new List(index);
- CollectionsMarshal.SetCount(list52, index);
- Span span52 = CollectionsMarshal.AsSpan(list52);
- num = 0;
- ref QuestSequence reference41 = ref span52[num];
- QuestSequence obj42 = new QuestSequence
- {
- Sequence = 0
- };
- num2 = 1;
- List list53 = new List(num2);
- CollectionsMarshal.SetCount(list53, num2);
- Span span53 = CollectionsMarshal.AsSpan(list53);
- index2 = 0;
- ref QuestStep reference42 = ref span53[index2];
- QuestStep obj43 = new QuestStep(EInteractionType.AcceptQuest, 1001739u, new Vector3(-94.529724f, 6.4999976f, 39.81079f), 131)
- {
- AetheryteShortcut = EAetheryteLocation.Uldah,
- AethernetShortcut = new AethernetShortcut
- {
- From = EAetheryteLocation.Uldah,
- To = EAetheryteLocation.UldahGladiator
- }
- };
- SkipConditions skipConditions6 = new SkipConditions();
- SkipAetheryteCondition obj44 = new SkipAetheryteCondition
- {
- InSameTerritory = true
- };
- index3 = 1;
- List list54 = new List(index3);
- CollectionsMarshal.SetCount(list54, index3);
- Span span54 = CollectionsMarshal.AsSpan(list54);
- num3 = 0;
- span54[num3] = 131;
- obj44.InTerritory = list54;
- skipConditions6.AetheryteShortcutIf = obj44;
- obj43.SkipConditions = skipConditions6;
- reference42 = obj43;
- obj42.Steps = list53;
- reference41 = obj42;
- num++;
- ref QuestSequence reference43 = ref span52[num];
- QuestSequence obj45 = new QuestSequence
- {
- Sequence = 1
- };
- index2 = 1;
- List list55 = new List(index2);
- CollectionsMarshal.SetCount(list55, index2);
- Span span55 = CollectionsMarshal.AsSpan(list55);
- num2 = 0;
- ref QuestStep reference44 = ref span55[num2];
- QuestStep obj46 = new QuestStep(EInteractionType.Combat, 1004224u, new Vector3(-220.93542f, -38.407475f, 63.91992f), 145)
- {
- AetheryteShortcut = EAetheryteLocation.EasternThanalanCampDrybone,
- EnemySpawnType = EEnemySpawnType.AfterInteraction
- };
- num3 = 1;
- List list56 = new List(num3);
- CollectionsMarshal.SetCount(list56, num3);
- Span span56 = CollectionsMarshal.AsSpan(list56);
- index3 = 0;
- span56[index3] = 1244u;
- obj46.KillEnemyDataIds = list56;
- reference44 = obj46;
- obj45.Steps = list55;
- reference43 = obj45;
- num++;
- ref QuestSequence reference45 = ref span52[num];
- QuestSequence obj47 = new QuestSequence
- {
- Sequence = 2
- };
- num2 = 1;
- List list57 = new List(num2);
- CollectionsMarshal.SetCount(list57, num2);
- Span span57 = CollectionsMarshal.AsSpan(list57);
- index2 = 0;
- span57[index2] = new QuestStep(EInteractionType.Interact, 1004224u, new Vector3(-220.93542f, -38.407475f, 63.91992f), 145);
- obj47.Steps = list57;
- reference45 = obj47;
- num++;
- ref QuestSequence reference46 = ref span52[num];
- QuestSequence obj48 = new QuestSequence
- {
- Sequence = 3
- };
- index2 = 1;
- List list58 = new List(index2);
- CollectionsMarshal.SetCount(list58, index2);
- Span span58 = CollectionsMarshal.AsSpan(list58);
- num2 = 0;
- ref QuestStep reference47 = ref span58[num2];
- QuestStep obj49 = new QuestStep(EInteractionType.Interact, 1001739u, new Vector3(-94.529724f, 6.4999976f, 39.81079f), 131)
+ ref QuestStep reference13 = ref span23[index];
+ QuestStep obj12 = new QuestStep(EInteractionType.AcceptQuest, 1001739u, new Vector3(-94.529724f, 6.4999976f, 39.81079f), 131)
{
AetheryteShortcut = EAetheryteLocation.Uldah,
AethernetShortcut = new AethernetShortcut
@@ -24826,93 +24230,339 @@ public static class AssemblyQuestLoader
}
};
SkipConditions skipConditions7 = new SkipConditions();
- SkipAetheryteCondition obj50 = new SkipAetheryteCondition
+ SkipAetheryteCondition obj13 = new SkipAetheryteCondition
{
InSameTerritory = true
};
- index3 = 1;
- List list59 = new List(index3);
- CollectionsMarshal.SetCount(list59, index3);
- Span span59 = CollectionsMarshal.AsSpan(list59);
- num3 = 0;
- span59[num3] = 131;
- obj50.InTerritory = list59;
- skipConditions7.AetheryteShortcutIf = obj50;
- obj49.SkipConditions = skipConditions7;
- reference47 = obj49;
- obj48.Steps = list58;
- reference46 = obj48;
- num++;
- ref QuestSequence reference48 = ref span52[num];
- QuestSequence obj51 = new QuestSequence
- {
- Sequence = 4
- };
- num2 = 1;
- List list60 = new List(num2);
- CollectionsMarshal.SetCount(list60, num2);
- Span span60 = CollectionsMarshal.AsSpan(list60);
+ num4 = 1;
+ List list24 = new List(num4);
+ CollectionsMarshal.SetCount(list24, num4);
+ Span span24 = CollectionsMarshal.AsSpan(list24);
index2 = 0;
- span60[index2] = new QuestStep(EInteractionType.SinglePlayerDuty, 1004091u, new Vector3(24.12439f, 7.1999984f, -102.76953f), 130)
+ span24[index2] = 131;
+ obj13.InTerritory = list24;
+ skipConditions7.AetheryteShortcutIf = obj13;
+ obj12.SkipConditions = skipConditions7;
+ reference13 = obj12;
+ obj11.Steps = list23;
+ reference12 = obj11;
+ num++;
+ ref QuestSequence reference14 = ref span22[num];
+ QuestSequence obj14 = new QuestSequence
+ {
+ Sequence = 1
+ };
+ index = 4;
+ List list25 = new List(index);
+ CollectionsMarshal.SetCount(list25, index);
+ Span span25 = CollectionsMarshal.AsSpan(list25);
+ num3 = 0;
+ ref QuestStep reference15 = ref span25[num3];
+ QuestStep obj15 = new QuestStep(EInteractionType.Emote, 1003990u, new Vector3(77.25635f, 4.0999947f, -138.62823f), 130)
{
AethernetShortcut = new AethernetShortcut
{
From = EAetheryteLocation.UldahGladiator,
To = EAetheryteLocation.UldahAdventurers
- }
+ },
+ Emote = EEmote.Me
};
- obj51.Steps = list60;
- reference48 = obj51;
- num++;
- ref QuestSequence reference49 = ref span52[num];
- QuestSequence obj52 = new QuestSequence
+ index2 = 6;
+ List