1
0
forked from liza/Questionable

Add ShB tank role quests

This commit is contained in:
Liza 2024-09-05 15:56:29 +02:00
parent e1ff326708
commit 50a2b29fee
Signed by: liza
GPG Key ID: 7199F8D727D55F67
9 changed files with 879 additions and 5 deletions

View File

@ -1,7 +1,6 @@
{ {
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
"Author": "liza", "Author": "liza",
"Disabled": true,
"QuestSequence": [ "QuestSequence": [
{ {
"Sequence": 0, "Sequence": 0,
@ -18,7 +17,7 @@
"AetheryteShortcut": "Crystarium", "AetheryteShortcut": "Crystarium",
"AethernetShortcut": [ "AethernetShortcut": [
"[Crystarium] Aetheryte Plaza", "[Crystarium] Aetheryte Plaza",
"[Crystarium] Musica Universalis Markets" "[Crystarium] The Pendants"
], ],
"SkipConditions": { "SkipConditions": {
"AetheryteShortcutIf": { "AetheryteShortcutIf": {
@ -27,6 +26,155 @@
} }
} }
] ]
},
{
"Sequence": 1,
"Steps": [
{
"DataId": 1029890,
"Position": {
"X": 738.796,
"Y": 22.936495,
"Z": 406.21033
},
"TerritoryId": 813,
"InteractionType": "Interact",
"AethernetShortcut": [
"[Crystarium] The Pendants",
"[Crystarium] Tessellation (Lakeland)"
],
"Fly": true
}
]
},
{
"Sequence": 2,
"Steps": [
{
"Position": {
"X": 447.0961,
"Y": 13.008003,
"Z": 210.91484
},
"StopDistance": 0.25,
"TerritoryId": 813,
"InteractionType": "Jump",
"JumpDestination": {
"Position": {
"X": 448.69727,
"Y": 13.393556,
"Z": 205.00368
}
},
"SkipConditions": {
"StepIf": {
"Flying": "Unlocked"
}
}
},
{
"DataId": 2009942,
"Position": {
"X": 453.4828,
"Y": 13.626221,
"Z": 189.44067
},
"TerritoryId": 813,
"InteractionType": "Combat",
"EnemySpawnType": "AfterInteraction",
"KillEnemyDataIds": [
10853
],
"Fly": true
}
]
},
{
"Sequence": 3,
"Steps": [
{
"DataId": 1029891,
"Position": {
"X": 445.27344,
"Y": 13.409448,
"Z": 204.42505
},
"TerritoryId": 813,
"InteractionType": "Interact"
}
]
},
{
"Sequence": 4,
"Steps": [
{
"Position": {
"X": 412.249,
"Y": 7.472949,
"Z": 187.34154
},
"TerritoryId": 813,
"InteractionType": "WalkTo",
"DisableNavmesh": true,
"Mount": true,
"SkipConditions": {
"StepIf": {
"Flying": "Unlocked"
}
}
},
{
"DataId": 2009943,
"Position": {
"X": 633.6614,
"Y": 21.377869,
"Z": -267.93323
},
"TerritoryId": 813,
"InteractionType": "Combat",
"EnemySpawnType": "AfterInteraction",
"KillEnemyDataIds": [
10854
],
"Fly": true
}
]
},
{
"Sequence": 5,
"Steps": [
{
"DataId": 1029892,
"Position": {
"X": 635.1262,
"Y": 20.257477,
"Z": -249.22565
},
"TerritoryId": 813,
"InteractionType": "Interact"
}
]
},
{
"Sequence": 255,
"Steps": [
{
"DataId": 1029889,
"Position": {
"X": -35.385742,
"Y": 3.9998174,
"Z": 251.75854
},
"TerritoryId": 819,
"InteractionType": "CompleteQuest",
"AetheryteShortcut": "Crystarium",
"AethernetShortcut": [
"[Crystarium] Aetheryte Plaza",
"[Crystarium] The Pendants"
],
"NextQuestId": 3244
}
]
} }
] ]
} }

View File

@ -0,0 +1,108 @@
{
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
"Author": "liza",
"QuestSequence": [
{
"Sequence": 0,
"Steps": [
{
"DataId": 1029889,
"Position": {
"X": -35.385742,
"Y": 3.9998174,
"Z": 251.75854
},
"TerritoryId": 819,
"InteractionType": "AcceptQuest",
"AetheryteShortcut": "Crystarium",
"AethernetShortcut": [
"[Crystarium] Aetheryte Plaza",
"[Crystarium] The Pendants"
],
"SkipConditions": {
"AetheryteShortcutIf": {
"InSameTerritory": true
}
}
}
]
},
{
"Sequence": 1,
"Steps": [
{
"DataId": 1029893,
"Position": {
"X": -248.34064,
"Y": 21.086334,
"Z": 346.0287
},
"TerritoryId": 814,
"InteractionType": "Interact",
"AetheryteShortcut": "Kholusia - Wright"
}
]
},
{
"Sequence": 2,
"Steps": [
{
"DataId": 1029895,
"Position": {
"X": -317.43347,
"Y": 19.407524,
"Z": 404.3794
},
"TerritoryId": 814,
"InteractionType": "Interact",
"Fly": true,
"CompletionQuestVariablesFlags": [
null,
null,
null,
null,
null,
128
]
},
{
"DataId": 1029896,
"Position": {
"X": -311.57397,
"Y": 17.772081,
"Z": 443.8086
},
"TerritoryId": 814,
"InteractionType": "Interact",
"Fly": true,
"Mount": true,
"CompletionQuestVariablesFlags": [
null,
null,
null,
null,
null,
64
]
}
]
},
{
"Sequence": 255,
"Steps": [
{
"DataId": 1029893,
"Position": {
"X": -248.34064,
"Y": 21.086334,
"Z": 346.0287
},
"TerritoryId": 814,
"InteractionType": "CompleteQuest",
"Fly": true,
"NextQuestId": 3245
}
]
}
]
}

View File

@ -0,0 +1,250 @@
{
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
"Author": "liza",
"QuestSequence": [
{
"Sequence": 0,
"Steps": [
{
"DataId": 1029893,
"Position": {
"X": -248.34064,
"Y": 21.086334,
"Z": 346.0287
},
"TerritoryId": 814,
"InteractionType": "AcceptQuest",
"AetheryteShortcut": "Kholusia - Wright",
"SkipConditions": {
"AetheryteShortcutIf": {
"NearPosition": {
"Position": {
"X": -248.34064,
"Y": 21.086334,
"Z": 346.0287
},
"TerritoryId": 814,
"MaximumDistance": 100
}
}
}
}
]
},
{
"Sequence": 1,
"Steps": [
{
"Position": {
"X": 173.40976,
"Y": 58.977684,
"Z": 883.3417
},
"TerritoryId": 814,
"InteractionType": "WalkTo",
"Fly": true,
"SkipConditions": {
"StepIf": {
"AetheryteUnlocked": "Eulmore",
"InTerritory": [
820
]
}
}
},
{
"DataId": 1029899,
"Position": {
"X": 34.561646,
"Y": 83.001076,
"Z": -67.00244
},
"TerritoryId": 820,
"InteractionType": "Interact",
"AetheryteShortcut": "Eulmore",
"SkipConditions": {
"AetheryteShortcutIf": {
"AetheryteLocked": "Eulmore"
}
}
}
]
},
{
"Sequence": 2,
"Steps": [
{
"DataId": 1029893,
"Position": {
"X": -248.34064,
"Y": 21.086334,
"Z": 346.0287
},
"TerritoryId": 814,
"InteractionType": "Interact",
"AetheryteShortcut": "Kholusia - Wright"
}
]
},
{
"Sequence": 3,
"Steps": [
{
"Position": {
"X": 271.6878,
"Y": 7.1558237,
"Z": -197.58272
},
"TerritoryId": 815,
"InteractionType": "WalkTo"
},
{
"DataId": 1029898,
"Position": {
"X": 270.37463,
"Y": 7.1558247,
"Z": -196.30737
},
"TerritoryId": 815,
"InteractionType": "Interact",
"AetheryteShortcut": "Amh Araeng - Mord Souq"
}
]
},
{
"Sequence": 4,
"Steps": [
{
"DataId": 1027876,
"Position": {
"X": 314.16797,
"Y": 1.4912677,
"Z": -255.60394
},
"TerritoryId": 815,
"InteractionType": "Interact",
"CompletionQuestVariablesFlags": [
null,
null,
null,
null,
null,
64
]
},
{
"DataId": 1029951,
"Position": {
"X": 303.82227,
"Y": 1.4685826,
"Z": -292.89697
},
"TerritoryId": 815,
"InteractionType": "Interact",
"CompletionQuestVariablesFlags": [
null,
null,
null,
null,
null,
128
]
}
]
},
{
"Sequence": 5,
"Steps": [
{
"DataId": 1029953,
"Position": {
"X": 241.19922,
"Y": 4.0297,
"Z": -289.601
},
"TerritoryId": 815,
"InteractionType": "Interact"
}
]
},
{
"Sequence": 6,
"Steps": [
{
"DataId": 2009944,
"Position": {
"X": 476.18823,
"Y": -44.87683,
"Z": 229.96863
},
"TerritoryId": 815,
"InteractionType": "Interact",
"AetheryteShortcut": "Amh Araeng - Inn at Journey's Head",
"Fly": true
}
]
},
{
"Sequence": 7,
"Steps": [
{
"Position": {
"X": 555.85315,
"Y": -50.899147,
"Z": 322.2599
},
"StopDistance": 0.25,
"TerritoryId": 815,
"InteractionType": "Combat",
"EnemySpawnType": "AutoOnEnterArea",
"KillEnemyDataIds": [
10855
]
}
]
},
{
"Sequence": 8,
"Steps": [
{
"DataId": 1029957,
"Position": {
"X": 293.04944,
"Y": -42.796906,
"Z": 251.75854
},
"TerritoryId": 815,
"InteractionType": "Interact",
"Fly": true
}
]
},
{
"Sequence": 255,
"Steps": [
{
"Position": {
"X": 296.43002,
"Y": 1.4685829,
"Z": -289.11447
},
"TerritoryId": 815,
"InteractionType": "WalkTo",
"Fly": true,
"AetheryteShortcut": "Amh Araeng - Mord Souq"
},
{
"DataId": 1029959,
"Position": {
"X": 295.27722,
"Y": 1.4685827,
"Z": -290.18085
},
"TerritoryId": 815,
"InteractionType": "CompleteQuest",
"NextQuestId": 3246
}
]
}
]
}

View File

@ -0,0 +1,183 @@
{
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
"Author": "liza",
"QuestSequence": [
{
"Sequence": 0,
"Steps": [
{
"Position": {
"X": 296.43002,
"Y": 1.4685829,
"Z": -289.11447
},
"TerritoryId": 815,
"InteractionType": "WalkTo",
"AetheryteShortcut": "Amh Araeng - Mord Souq",
"Fly": true,
"SkipConditions": {
"AetheryteShortcutIf": {
"NearPosition": {
"Position": {
"X": 296.43002,
"Y": 1.4685829,
"Z": -289.11447
},
"TerritoryId": 815,
"MaximumDistance": 100
}
}
}
},
{
"DataId": 1029959,
"Position": {
"X": 295.27722,
"Y": 1.4685827,
"Z": -290.18085
},
"TerritoryId": 815,
"InteractionType": "AcceptQuest"
}
]
},
{
"Sequence": 1,
"Steps": [
{
"DataId": 1029960,
"Position": {
"X": -393.66754,
"Y": 52.333755,
"Z": 497.15417
},
"TerritoryId": 816,
"InteractionType": "Interact",
"AetheryteShortcut": "Il Mheg - Lydha Lran",
"DialogueChoices": [
{
"Type": "List",
"Prompt": "TEXT_LUCKBA131_03246_Q2_000_000",
"Answer": "TEXT_LUCKBA131_03246_A2_000_001"
}
]
}
]
},
{
"Sequence": 2,
"Steps": [
{
"DataId": 1027671,
"Position": {
"X": -33.12738,
"Y": 105.68533,
"Z": -879.9115
},
"TerritoryId": 816,
"InteractionType": "Interact",
"AetheryteShortcut": "Il Mheg - Pla Enni",
"Fly": true,
"CompletionQuestVariablesFlags": [
null,
null,
null,
null,
null,
64
]
},
{
"DataId": 1027670,
"Position": {
"X": 32.028687,
"Y": 101.900696,
"Z": -857.87744
},
"TerritoryId": 816,
"InteractionType": "Interact",
"Fly": true,
"CompletionQuestVariablesFlags": [
null,
null,
null,
null,
null,
128
]
}
]
},
{
"Sequence": 3,
"Steps": [
{
"DataId": 1029961,
"Position": {
"X": -93.736206,
"Y": 101.44155,
"Z": -834.9279
},
"TerritoryId": 816,
"InteractionType": "Interact",
"Fly": true
}
]
},
{
"Sequence": 4,
"Steps": [
{
"DataId": 1029963,
"Position": {
"X": 61.020752,
"Y": 100.95007,
"Z": -872.4651
},
"TerritoryId": 816,
"InteractionType": "Interact",
"Fly": true
}
]
},
{
"Sequence": 5,
"Steps": [
{
"DataId": 2009946,
"Position": {
"X": 395.16284,
"Y": 62.05847,
"Z": -516.22797
},
"TerritoryId": 816,
"InteractionType": "Combat",
"EnemySpawnType": "AfterInteraction",
"KillEnemyDataIds": [
10856
],
"AetheryteShortcut": "Il Mheg - Wolekdorf",
"Fly": true
}
]
},
{
"Sequence": 255,
"Steps": [
{
"DataId": 1029963,
"Position": {
"X": 61.020752,
"Y": 100.95007,
"Z": -872.4651
},
"TerritoryId": 816,
"InteractionType": "CompleteQuest",
"AetheryteShortcut": "Il Mheg - Pla Enni",
"Fly": true,
"NextQuestId": 3247
}
]
}
]
}

View File

@ -0,0 +1,69 @@
{
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
"Author": "liza",
"QuestSequence": [
{
"Sequence": 0,
"Steps": [
{
"DataId": 1029963,
"Position": {
"X": 61.020752,
"Y": 100.95007,
"Z": -872.4651
},
"TerritoryId": 816,
"InteractionType": "AcceptQuest",
"AetheryteShortcut": "Il Mheg - Pla Enni",
"SkipConditions": {
"AetheryteShortcutIf": {
"NearPosition": {
"Position": {
"X": 61.020752,
"Y": 100.95007,
"Z": -872.4651
},
"TerritoryId": 816,
"MaximumDistance": 100
}
}
},
"Fly": true
}
]
},
{
"Sequence": 1,
"Steps": [
{
"DataId": 1029967,
"Position": {
"X": -68.40625,
"Y": 105.29414,
"Z": -251.88074
},
"TerritoryId": 816,
"InteractionType": "SinglePlayerDuty",
"Fly": true
}
]
},
{
"Sequence": 255,
"Steps": [
{
"DataId": 1029963,
"Position": {
"X": 61.020752,
"Y": 100.95007,
"Z": -872.4651
},
"TerritoryId": 816,
"InteractionType": "CompleteQuest",
"AetheryteShortcut": "Il Mheg - Pla Enni",
"Fly": true
}
]
}
]
}

View File

@ -0,0 +1,102 @@
{
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
"Author": "liza",
"QuestSequence": [
{
"Sequence": 0,
"Steps": [
{
"DataId": 1029963,
"Position": {
"X": 61.020752,
"Y": 100.95007,
"Z": -872.4651
},
"TerritoryId": 816,
"InteractionType": "AcceptQuest",
"AetheryteShortcut": "Il Mheg - Pla Enni",
"SkipConditions": {
"AetheryteShortcutIf": {
"NearPosition": {
"Position": {
"X": 61.020752,
"Y": 100.95007,
"Z": -872.4651
},
"TerritoryId": 816,
"MaximumDistance": 100
}
}
},
"Fly": true
}
]
},
{
"Sequence": 1,
"Steps": [
{
"Position": {
"X": -823.0134,
"Y": 22.900805,
"Z": -55.223766
},
"TerritoryId": 816,
"InteractionType": "WalkTo",
"Fly": true
},
{
"DataId": 2009948,
"Position": {
"X": -824.88745,
"Y": 23.11737,
"Z": -56.443176
},
"TerritoryId": 816,
"InteractionType": "SinglePlayerDuty",
"ItemId": 2002569
}
]
},
{
"Sequence": 2
},
{
"Sequence": 3,
"Steps": [
{
"DataId": 1029963,
"Position": {
"X": 61.020752,
"Y": 100.95007,
"Z": -872.4651
},
"TerritoryId": 816,
"InteractionType": "Interact",
"AetheryteShortcut": "Il Mheg - Pla Enni",
"Fly": true
}
]
},
{
"Sequence": 255,
"Steps": [
{
"DataId": 1029889,
"Position": {
"X": -35.385742,
"Y": 3.9998174,
"Z": 251.75854
},
"TerritoryId": 819,
"InteractionType": "CompleteQuest",
"AetheryteShortcut": "Crystarium",
"AethernetShortcut": [
"[Crystarium] Aetheryte Plaza",
"[Crystarium] The Pendants"
]
}
]
}
]
}

View File

@ -31,6 +31,9 @@ internal static class Interact
if (step.ChatMessage != null) if (step.ChatMessage != null)
yield break; yield break;
if (step.ItemId != null)
yield break;
if (step.DataId == null) if (step.DataId == null)
yield break; yield break;
} }

View File

@ -40,7 +40,12 @@ internal static class UseItem
{ {
public IEnumerable<ITask> CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) public IEnumerable<ITask> CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step)
{ {
if (step.InteractionType != EInteractionType.UseItem) if (step.InteractionType is EInteractionType.SinglePlayerDuty)
{
if (step.ItemId == null)
return [];
}
else if (step.InteractionType != EInteractionType.UseItem)
return []; return [];
ArgumentNullException.ThrowIfNull(step.ItemId); ArgumentNullException.ThrowIfNull(step.ItemId);

View File

@ -38,6 +38,7 @@ internal sealed class CreationUtilsComponent
private readonly ITargetManager _targetManager; private readonly ITargetManager _targetManager;
private readonly ICondition _condition; private readonly ICondition _condition;
private readonly IGameGui _gameGui; private readonly IGameGui _gameGui;
private readonly Configuration _configuration;
private readonly ILogger<CreationUtilsComponent> _logger; private readonly ILogger<CreationUtilsComponent> _logger;
public CreationUtilsComponent( public CreationUtilsComponent(
@ -51,6 +52,7 @@ internal sealed class CreationUtilsComponent
ITargetManager targetManager, ITargetManager targetManager,
ICondition condition, ICondition condition,
IGameGui gameGui, IGameGui gameGui,
Configuration configuration,
ILogger<CreationUtilsComponent> logger) ILogger<CreationUtilsComponent> logger)
{ {
_movementController = movementController; _movementController = movementController;
@ -63,6 +65,7 @@ internal sealed class CreationUtilsComponent
_targetManager = targetManager; _targetManager = targetManager;
_condition = condition; _condition = condition;
_gameGui = gameGui; _gameGui = gameGui;
_configuration = configuration;
_logger = logger; _logger = logger;
} }
@ -79,8 +82,11 @@ internal sealed class CreationUtilsComponent
ImGui.Text(SeIconChar.BotanistSprout.ToIconString()); ImGui.Text(SeIconChar.BotanistSprout.ToIconString());
} }
if (_configuration.Advanced.AdditionalStatusInformation)
{
var q = _questFunctions.GetCurrentQuest(); var q = _questFunctions.GetCurrentQuest();
ImGui.Text($"Current Quest: {q.CurrentQuest} → {q.Sequence}"); ImGui.Text($"Current Quest: {q.CurrentQuest} → {q.Sequence}");
}
#if false #if false
var questManager = QuestManager.Instance(); var questManager = QuestManager.Instance();