1
0
forked from liza/Questionable

Compare commits

...

21 Commits

Author SHA1 Message Date
7d622c4d12 shb phys role quests 2024-08-29 03:41:21 +00:00
33774df23b
Daily quest updates 2024-08-28 11:48:40 +02:00
916082ef35
Add Rising dialogue/NextQuestId 2024-08-28 11:26:21 +02:00
218dbd8feb
Daily quest update 2024-08-27 23:40:50 +02:00
90b0467742
Minor gathering path adjustments 2024-08-27 22:52:15 +02:00
3d7b152cd1
Change some teleports in 'World of Wonders' 2024-08-27 22:45:43 +02:00
fe1d2d51db
Mark completed daily quests as unable to accept 2024-08-27 22:45:42 +02:00
95535d0ef2 Merge pull request '[EW][Allied Society][Omicrons] Added a few quests and related gathering paths' (#34) from plogon_enjoyer/Questionable:omicron into master
Reviewed-on: liza/Questionable#34
2024-08-27 20:45:08 +00:00
33726426df
Add Rising 2024 quests 2024-08-27 22:02:26 +02:00
0473c9b17c
Update code for updated dalamud 2024-08-27 22:00:34 +02:00
b9061b3190
Support 'ChatMessage' in CompleteQuest steps 2024-08-27 21:14:22 +02:00
Plogon Enjoyer
2f4313c9da Updated Omicron daily quest 'Guardians of the Galaxy' 2024-08-27 00:44:45 +08:00
Plogon Enjoyer
99499415db Updated Omicron daily quest 'I, Omicron' 2024-08-27 00:44:30 +08:00
Plogon Enjoyer
7fe85a49f2 Added Omicron story quest 'And Another Question'. Also added required gathering points. 2024-08-27 00:08:18 +08:00
21c9e2fcac
Fix quest tooltips including quest name twice 2024-08-26 16:13:27 +02:00
2c2e95682b
Fix previous quest requirement 2024-08-26 16:13:17 +02:00
24f95d58fe
Version bump 2024-08-26 16:07:39 +02:00
a840a9f42e
Pick up DT aether current quests (HF/LM) during the MSQ 2024-08-26 16:01:07 +02:00
e6ee91c19c
Fix interactions in 'A Knight of Alexandria' 2024-08-26 15:58:14 +02:00
477b7cb446
Update positions for S9 aetheryte interactions 2024-08-26 11:14:26 +02:00
2a4ce09cda
Handle specific dialogue interactions while in a duty 2024-08-26 11:11:44 +02:00
54 changed files with 2148 additions and 88 deletions

View File

@ -1,5 +1,5 @@
<Project> <Project>
<PropertyGroup> <PropertyGroup>
<Version>2.15</Version> <Version>2.17</Version>
</PropertyGroup> </PropertyGroup>
</Project> </Project>

View File

@ -0,0 +1,69 @@
{
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/GatheringPaths/gatheringlocation-v1.json",
"Author": "plogon_enjoyer",
"Steps": [
{
"TerritoryId": 960,
"InteractionType": "None",
"AetheryteShortcut": "Ultima Thule - Reah Tahra"
}
],
"Groups": [
{
"Nodes": [
{
"DataId": 34376,
"Locations": [
{
"Position": {
"X": -586.0029,
"Y": 84.39367,
"Z": 568.1448
},
"MinimumAngle": -60,
"MaximumAngle": 75,
"MinimumDistance": 1,
"MaximumDistance": 3
}
]
}
]
},
{
"Nodes": [
{
"DataId": 34377,
"Locations": [
{
"Position": {
"X": -578.2748,
"Y": 86.34826,
"Z": 567.2876
},
"MinimumAngle": -80,
"MaximumAngle": 60
}
]
}
]
},
{
"Nodes": [
{
"DataId": 34378,
"Locations": [
{
"Position": {
"X": -600.2446,
"Y": 86.01588,
"Z": 557.4477
},
"MinimumAngle": -35,
"MaximumAngle": 145
}
]
}
]
}
]
}

View File

@ -0,0 +1,67 @@
{
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/GatheringPaths/gatheringlocation-v1.json",
"Author": "plogon_enjoyer",
"Steps": [
{
"TerritoryId": 960,
"InteractionType": "None",
"AetheryteShortcut": "Ultima Thule - Reah Tahra"
}
],
"Groups": [
{
"Nodes": [
{
"DataId": 34385,
"Locations": [
{
"Position": {
"X": 27.77994,
"Y": 73.57088,
"Z": 695.2364
},
"MinimumAngle": 0,
"MaximumAngle": 135
}
]
}
]
},
{
"Nodes": [
{
"DataId": 34386,
"Locations": [
{
"Position": {
"X": 23.20134,
"Y": 70.90392,
"Z": 698.6194
},
"MinimumAngle": -10,
"MaximumAngle": 145
}
]
}
]
},
{
"Nodes": [
{
"DataId": 34387,
"Locations": [
{
"Position": {
"X": 30.69294,
"Y": 75.43362,
"Z": 688.8371
},
"MinimumAngle": -5,
"MaximumAngle": 120
}
]
}
]
}
]
}

View File

@ -42,14 +42,18 @@
"X": 419.309, "X": 419.309,
"Y": -10.25133, "Y": -10.25133,
"Z": -784.8259 "Z": -784.8259
} },
"MinimumAngle": -25,
"MaximumAngle": 85
}, },
{ {
"Position": { "Position": {
"X": 410.6989, "X": 410.6989,
"Y": -10.9656, "Y": -10.9656,
"Z": -790.8315 "Z": -790.8315
} },
"MinimumAngle": -20,
"MaximumAngle": 95
} }
] ]
} }

View File

@ -52,8 +52,8 @@
"Y": -47.86026, "Y": -47.86026,
"Z": -394.9654 "Z": -394.9654
}, },
"MinimumAngle": -120, "MinimumAngle": -145,
"MaximumAngle": 120 "MaximumAngle": -95
} }
] ]
} }

View File

@ -1,6 +1,9 @@
{ {
"$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", "JerryWester"], "Author": [
"liza",
"JerryWester"
],
"QuestSequence": [ "QuestSequence": [
{ {
"Sequence": 0, "Sequence": 0,
@ -95,14 +98,19 @@
"AethernetShard": "[Gold Saucer] Chocobo Square" "AethernetShard": "[Gold Saucer] Chocobo Square"
}, },
{ {
"TerritoryId": 144, "TerritoryId": 388,
"InteractionType": "AttuneAetheryte", "InteractionType": "None",
"Aetheryte": "Gold Saucer",
"AethernetShortcut": [ "AethernetShortcut": [
"[Gold Saucer] Chocobo Square", "[Gold Saucer] Chocobo Square",
"[Gold Saucer] Entrance & Card Squares" "[Gold Saucer] Entrance & Card Squares"
] ]
}, },
{
"TerritoryId": 144,
"InteractionType": "AttuneAetheryte",
"Aetheryte": "Gold Saucer",
"DelaySecondsAtStart": 3
},
{ {
"DataId": 1011080, "DataId": 1011080,
"Position": { "Position": {
@ -156,7 +164,8 @@
{ {
"TerritoryId": 144, "TerritoryId": 144,
"InteractionType": "AttuneAethernetShard", "InteractionType": "AttuneAethernetShard",
"AethernetShard": "[Gold Saucer] Event Square" "AethernetShard": "[Gold Saucer] Event Square",
"DelaySecondsAtStart": 3
}, },
{ {
"Position": { "Position": {
@ -198,6 +207,14 @@
{ {
"Sequence": 6, "Sequence": 6,
"Steps": [ "Steps": [
{
"TerritoryId": 144,
"InteractionType": "None",
"AethernetShortcut": [
"[Gold Saucer] Cactpot Board",
"[Gold Saucer] Aetheryte Plaza"
]
},
{ {
"DataId": 1011084, "DataId": 1011084,
"Position": { "Position": {
@ -207,10 +224,7 @@
}, },
"TerritoryId": 144, "TerritoryId": 144,
"InteractionType": "Interact", "InteractionType": "Interact",
"AethernetShortcut": [ "DelaySecondsAtStart": 3
"[Gold Saucer] Cactpot Board",
"[Gold Saucer] Aetheryte Plaza"
]
} }
] ]
}, },
@ -222,6 +236,14 @@
"InteractionType": "AttuneAethernetShard", "InteractionType": "AttuneAethernetShard",
"AethernetShard": "[Gold Saucer] Round Square" "AethernetShard": "[Gold Saucer] Round Square"
}, },
{
"TerritoryId": 144,
"InteractionType": "None",
"AethernetShortcut": [
"[Gold Saucer] Round Square",
"[Gold Saucer] Entrance & Card Squares"
]
},
{ {
"DataId": 1010448, "DataId": 1010448,
"Position": { "Position": {
@ -232,10 +254,7 @@
"StopDistance": 5, "StopDistance": 5,
"TerritoryId": 144, "TerritoryId": 144,
"InteractionType": "CompleteQuest", "InteractionType": "CompleteQuest",
"AethernetShortcut": [ "DelaySecondsAtStart": 3
"[Gold Saucer] Round Square",
"[Gold Saucer] Entrance & Card Squares"
]
} }
] ]
} }

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,
@ -30,13 +29,28 @@
{ {
"Sequence": 1, "Sequence": 1,
"Steps": [ "Steps": [
{
"DataId": 1034071,
"Position": {
"X": -171.4046,
"Y": 5.779212,
"Z": -110.27698
},
"TerritoryId": 813,
"InteractionType": "Interact",
"Fly": true
}
] ]
}, },
{ {
"Sequence": 255, "Sequence": 255,
"Steps": [ "Steps": [
{
"TerritoryId": 813,
"InteractionType": "Craft",
"ItemId": 31179,
"ItemCount": 3
},
{ {
"Position": { "Position": {
"X": -615.73865, "X": -615.73865,

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,6 +17,54 @@
} }
] ]
}, },
{
"Sequence": 1,
"Steps": [
{
"DataId": 1032830,
"Position": {
"X": -134.02002,
"Y": -18.460577,
"Z": 303.5476
},
"TerritoryId": 817,
"InteractionType": "Interact",
"AetheryteShortcut": "Rak'tika - Slitherbough"
}
]
},
{
"Sequence": 2,
"Steps": [
{
"DataId": 1032831,
"Position": {
"X": -54.795166,
"Y": 0.7328947,
"Z": 217.09009
},
"TerritoryId": 817,
"InteractionType": "UseItem",
"ItemId": 2002980,
"Fly": true
}
]
},
{
"Sequence": 3,
"Steps": [
{
"DataId": 1032830,
"Position": {
"X": -134.02002,
"Y": -18.460577,
"Z": 303.5476
},
"TerritoryId": 817,
"InteractionType": "Interact"
}
]
},
{ {
"Sequence": 255, "Sequence": 255,
"Steps": [ "Steps": [
@ -30,12 +77,7 @@
"TerritoryId": 817, "TerritoryId": 817,
"InteractionType": "WalkTo", "InteractionType": "WalkTo",
"AetheryteShortcut": "Rak'tika - Fanow", "AetheryteShortcut": "Rak'tika - Fanow",
"Fly": true, "Fly": true
"RequiredGatheredItems": [
]
}, },
{ {
"DataId": 1032643, "DataId": 1032643,

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,
@ -32,9 +31,16 @@
"AetheryteShortcut": "Rak'tika - Fanow", "AetheryteShortcut": "Rak'tika - Fanow",
"Fly": true, "Fly": true,
"RequiredGatheredItems": [ "RequiredGatheredItems": [
{
"QuestAcceptedAsClass": "Miner",
"ItemId": 29535,
"ItemCount": 3
},
{
"QuestAcceptedAsClass": "Botanist",
"ItemId": 29561,
"ItemCount": 3
}
] ]
}, },
{ {

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,
@ -32,9 +31,16 @@
"AetheryteShortcut": "Rak'tika - Fanow", "AetheryteShortcut": "Rak'tika - Fanow",
"Fly": true, "Fly": true,
"RequiredGatheredItems": [ "RequiredGatheredItems": [
{
"QuestAcceptedAsClass": "Miner",
"ItemId": 29536,
"ItemCount": 3
},
{
"QuestAcceptedAsClass": "Botanist",
"ItemId": 29562,
"ItemCount": 3
}
] ]
}, },
{ {

View File

@ -0,0 +1,120 @@
{
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
"Author": "Fifi",
"QuestSequence": [
{
"Sequence": 0,
"Steps": [
{
"DataId": 1030126,
"Position": {
"X": -18.143005,
"Y": 3.9998174,
"Z": 235.40088
},
"TerritoryId": 819,
"InteractionType": "AcceptQuest",
"AetheryteShortcut": "Crystarium",
"AethernetShortcut": [
"[Crystarium] Aetheryte Plaza",
"[Crystarium] The Pendants"
],
"SkipConditions": {
"AetheryteShortcutIf": {
"InSameTerritory": true
}
}
}
]
},
{
"Sequence": 1,
"Steps": [
{
"DataId": 1030127,
"Position": {
"X": 200.12195,
"Y": -0.39141315,
"Z": 389.45593
},
"TerritoryId": 813,
"InteractionType": "Interact",
"AethernetShortcut": [
"[Crystarium] The Pendants",
"[Crystarium] Tessellation (Lakeland)"
],
"Fly": true
}
]
},
{
"Sequence": 2,
"Steps": [
{
"DataId": 2010396,
"Position": {
"X": 195.48328,
"Y": -0.7477417,
"Z": 370.93152
},
"TerritoryId": 813,
"InteractionType": "UseItem",
"ItemId": 2002718
}
]
},
{
"Sequence": 3,
"Steps": [
{
"DataId": 2010397,
"Position": {
"X": 203.90625,
"Y": -0.5340576,
"Z": 389.82214
},
"TerritoryId": 813,
"InteractionType": "Combat",
"EnemySpawnType": "AfterInteraction",
"KillEnemyDataIds": [10872]
}
]
},
{
"Sequence": 4,
"Steps": [
{
"DataId": 1031013,
"Position": {
"X": 200.09155,
"Y": -0.39049676,
"Z": 389.4254
},
"TerritoryId": 813,
"InteractionType": "Interact"
}
]
},
{
"Sequence": 255,
"Steps": [
{
"DataId": 1030964,
"Position": {
"X": -18.143005,
"Y": 3.9998174,
"Z": 235.40088
},
"TerritoryId": 819,
"InteractionType": "CompleteQuest",
"NextQuestId": 3274,
"AetheryteShortcut": "Crystarium",
"AethernetShortcut": [
"[Crystarium] Aetheryte Plaza",
"[Crystarium] The Pendants"
]
}
]
}
]
}

View File

@ -0,0 +1,119 @@
{
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
"Author": "Fifi",
"QuestSequence": [
{
"Sequence": 0,
"Steps": [
{
"DataId": 1030964,
"Position": {
"X": -18.143005,
"Y": 3.9998174,
"Z": 235.40088
},
"TerritoryId": 819,
"InteractionType": "AcceptQuest",
"AetheryteShortcut": "Crystarium",
"AethernetShortcut": [
"[Crystarium] Aetheryte Plaza",
"[Crystarium] The Pendants"
],
"SkipConditions": {
"AetheryteShortcutIf": {
"InSameTerritory": true
}
}
}
]
},
{
"Sequence": 1,
"Steps": [
{
"DataId": 1030130,
"Position": {
"X": 469.0775,
"Y": -32.782784,
"Z": -288.44135
},
"TerritoryId": 815,
"InteractionType": "Interact",
"AetheryteShortcut": "Amh Araeng - Mord Souq",
"Fly": true
}
]
},
{
"Sequence": 2,
"Steps": [
{
"DataId": 2010399,
"Position": {
"X": 613.39734,
"Y": -33.585205,
"Z": -180.95679
},
"TerritoryId": 815,
"InteractionType": "Interact",
"Fly": true
}
]
},
{
"Sequence": 3,
"Steps": [
{
"DataId": 2010400,
"Position": {
"X": 536.9192,
"Y": -33.737732,
"Z": 38.83423
},
"TerritoryId": 815,
"InteractionType": "Combat",
"EnemySpawnType": "AfterInteraction",
"KillEnemyDataIds": [10873],
"Fly": true
}
]
},
{
"Sequence": 4,
"Steps": [
{
"DataId": 2010401,
"Position": {
"X": 469.0775,
"Y": -32.791687,
"Z": -288.44135
},
"TerritoryId": 815,
"InteractionType": "Interact",
"Fly": true
}
]
},
{
"Sequence": 255,
"Steps": [
{
"DataId": 1030964,
"Position": {
"X": -18.143005,
"Y": 3.9998174,
"Z": 235.40088
},
"TerritoryId": 819,
"InteractionType": "CompleteQuest",
"NextQuestId": 3275,
"AetheryteShortcut": "Crystarium",
"AethernetShortcut": [
"[Crystarium] Aetheryte Plaza",
"[Crystarium] The Pendants"
]
}
]
}
]
}

View File

@ -0,0 +1,140 @@
{
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
"Author": "Fifi",
"QuestSequence": [
{
"Sequence": 0,
"Steps": [
{
"DataId": 1030964,
"Position": {
"X": -18.143005,
"Y": 3.9998174,
"Z": 235.40088
},
"TerritoryId": 819,
"InteractionType": "AcceptQuest",
"AetheryteShortcut": "Crystarium",
"AethernetShortcut": [
"[Crystarium] Aetheryte Plaza",
"[Crystarium] The Pendants"
],
"SkipConditions": {
"AetheryteShortcutIf": {
"InSameTerritory": true
}
}
}
]
},
{
"Sequence": 1,
"Steps": [
{
"DataId": 1030135,
"Position": {
"X": -251.42291,
"Y": 22.19962,
"Z": 325.7953
},
"TerritoryId": 814,
"InteractionType": "Interact",
"AetheryteShortcut": "Kholusia - Wright",
"Fly": true
}
]
},
{
"Sequence": 2,
"Steps": [
{
"DataId": 2010402,
"Position": {
"X": -550.7744,
"Y": 29.160034,
"Z": 363.4851
},
"TerritoryId": 814,
"InteractionType": "Interact",
"Fly": true
}
]
},
{
"Sequence": 3,
"Steps": [
{
"DataId": 2010403,
"Position": {
"X": -550.98804,
"Y": 41.33667,
"Z": 252.24683
},
"TerritoryId": 814,
"InteractionType": "Interact",
"Fly": true
}
]
},
{
"Sequence": 4,
"Steps": [
{
"DataId": 1030136,
"Position": {
"X": -192.58417,
"Y": 26.771265,
"Z": 248.46265
},
"TerritoryId": 814,
"InteractionType": "Interact",
"Fly": true
}
]
},
{
"Sequence": 5,
"Steps": [
{
"DataId": 1030140,
"Position": {
"X": 67.64319,
"Y": 82.001656,
"Z": -53.330322
},
"TerritoryId": 820,
"InteractionType": "Interact",
"AetheryteShortcut": "Eulmore"
}
]
},
{
"Sequence": 255,
"Steps": [
{
"DataId": 1030964,
"Position": {
"X": -18.143005,
"Y": 3.9998174,
"Z": 235.40088
},
"TerritoryId": 819,
"InteractionType": "CompleteQuest",
"AetheryteShortcut": "Crystarium",
"AethernetShortcut": [
"[Crystarium] Aetheryte Plaza",
"[Crystarium] The Pendants"
],
"NextQuestId": 3276,
"DialogueChoices": [
{
"Type": "List",
"Prompt": "TEXT_LUCKBA321_03275_Q1_000_000",
"Answer": "TEXT_LUCKBA321_03275_A1_000_001"
}
]
}
]
}
]
}

View File

@ -0,0 +1,83 @@
{
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
"Author": "Fifi",
"QuestSequence": [
{
"Sequence": 0,
"Steps": [
{
"DataId": 1030964,
"Position": {
"X": -18.143005,
"Y": 3.9998174,
"Z": 235.40088
},
"TerritoryId": 819,
"InteractionType": "AcceptQuest",
"AetheryteShortcut": "Crystarium",
"AethernetShortcut": [
"[Crystarium] Aetheryte Plaza",
"[Crystarium] The Pendants"
],
"SkipConditions": {
"AetheryteShortcutIf": {
"InSameTerritory": true
}
}
}
]
},
{
"Sequence": 1,
"Steps": [
{
"DataId": 1030144,
"Position": {
"X": 94.68213,
"Y": 37.377014,
"Z": 611.1085
},
"TerritoryId": 814,
"InteractionType": "Interact",
"Fly": true,
"AetheryteShortcut": "Kholusia - Wright"
}
]
},
{
"Sequence": 2,
"Steps": [
{
"DataId": 1030146,
"Position": {
"X": -190.1427,
"Y": 12.748831,
"Z": 591.6686
},
"TerritoryId": 817,
"InteractionType": "SinglePlayerDuty",
"AetheryteShortcut": "Rak'tika - Slitherbough",
"Fly": true
}
]
},
{
"Sequence": 255,
"Steps": [
{
"DataId": 1030144,
"Position": {
"X": 94.68213,
"Y": 37.377014,
"Z": 611.1085
},
"TerritoryId": 814,
"InteractionType": "CompleteQuest",
"AetheryteShortcut": "Kholusia - Wright",
"Fly": true,
"NextQuestId": 3277
}
]
}
]
}

View File

@ -0,0 +1,118 @@
{
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
"Author": "Fifi",
"QuestSequence": [
{
"Sequence": 0,
"Steps": [
{
"DataId": 1030145,
"Position": {
"X": 93.461426,
"Y": 37.43559,
"Z": 611.50525
},
"TerritoryId": 814,
"InteractionType": "AcceptQuest",
"AetheryteShortcut": "Kholusia - Wright",
"SkipConditions": {
"AetheryteShortcutIf": {
"InSameTerritory": true
}
},
"Fly": true
}
]
},
{
"Sequence": 1,
"Steps": [
{
"DataId": 2010405,
"Position": {
"X": -33.707214,
"Y": 3.982544,
"Z": 205.70679
},
"TerritoryId": 819,
"InteractionType": "Interact",
"AetheryteShortcut": "Crystarium",
"AethernetShortcut": [
"[Crystarium] Aetheryte Plaza",
"[Crystarium] The Pendants"
]
}
]
},
{
"Sequence": 2,
"Steps": [
{
"DataId": 1027323,
"Position": {
"X": -42.893127,
"Y": 3.9998171,
"Z": 242.08435
},
"TerritoryId": 819,
"InteractionType": "Interact"
},
{
"DataId": 1027238,
"Position": {
"X": -15.487976,
"Y": 3.9998171,
"Z": 215.3811
},
"TerritoryId": 819,
"InteractionType": "Interact"
},
{
"DataId": 1030147,
"Position": {
"X": 0.59503174,
"Y": 3.9998174,
"Z": 209.27734
},
"TerritoryId": 819,
"InteractionType": "Interact"
}
]
},
{
"Sequence": 3,
"Steps": [
{
"DataId": 1030148,
"Position": {
"X": -246.57056,
"Y": 10.152376,
"Z": 678.21765
},
"TerritoryId": 817,
"InteractionType": "Interact",
"AetheryteShortcut": "Rak'tika - Slitherbough",
"Fly": true
}
]
},
{
"Sequence": 255,
"Steps": [
{
"DataId": 1030145,
"Position": {
"X": 93.461426,
"Y": 37.43559,
"Z": 611.50525
},
"TerritoryId": 814,
"InteractionType": "CompleteQuest",
"AetheryteShortcut": "Kholusia - Wright",
"Fly": true,
"NextQuestId": 3278
}
]
}
]
}

View File

@ -0,0 +1,122 @@
{
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
"Author": "Fifi",
"QuestSequence": [
{
"Sequence": 0,
"Steps": [
{
"DataId": 1030144,
"Position": {
"X": 94.68213,
"Y": 37.377014,
"Z": 611.1085
},
"TerritoryId": 814,
"InteractionType": "AcceptQuest",
"AetheryteShortcut": "Kholusia - Wright",
"SkipConditions": {
"AetheryteShortcutIf": {
"InSameTerritory": true
}
},
"Fly": true
}
]
},
{
"Sequence": 1,
"Steps": [
{
"DataId": 1027253,
"Position": {
"X": 17.502075,
"Y": 19.999794,
"Z": -190.41736
},
"TerritoryId": 819,
"InteractionType": "Interact",
"AetheryteShortcut": "Crystarium",
"AethernetShortcut": [
"[Crystarium] Aetheryte Plaza",
"[Crystarium] The Crystalline Mean"
]
}
]
},
{
"Sequence": 2,
"Steps": [
{
"DataId": 2010406,
"Position": {
"X": -17.013855,
"Y": 4.470825,
"Z": 234.97363
},
"TerritoryId": 819,
"InteractionType": "Interact",
"AethernetShortcut": [
"[Crystarium] The Crystalline Mean",
"[Crystarium] The Pendants"
]
}
]
},
{
"Sequence": 3,
"Steps": [
{
"DataId": 1030990,
"Position": {
"X": -246.57056,
"Y": 10.152376,
"Z": 678.21765
},
"TerritoryId": 817,
"InteractionType": "SinglePlayerDuty",
"AetheryteShortcut": "Rak'tika - Slitherbough",
"Fly": true
}
]
},
{ "Sequence": 4, "Steps": [] },
{
"Sequence": 5,
"Steps": [
{
"DataId": 1030145,
"Position": {
"X": 93.461426,
"Y": 37.43559,
"Z": 611.50525
},
"TerritoryId": 814,
"InteractionType": "Interact",
"Fly": true,
"AetheryteShortcut": "Kholusia - Wright"
}
]
},
{
"Sequence": 255,
"Steps": [
{
"DataId": 1030964,
"Position": {
"X": -18.143005,
"Y": 3.9998174,
"Z": 235.40088
},
"TerritoryId": 819,
"InteractionType": "CompleteQuest",
"AetheryteShortcut": "Crystarium",
"AethernetShortcut": [
"[Crystarium] Aetheryte Plaza",
"[Crystarium] The Pendants"
]
}
]
}
]
}

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,
@ -30,11 +29,28 @@
{ {
"Sequence": 1, "Sequence": 1,
"Steps": [ "Steps": [
{
"DataId": 1044592,
"Position": {
"X": -493.40048,
"Y": -158.89024,
"Z": -384.29846
},
"TerritoryId": 959,
"InteractionType": "Interact",
"Fly": true
}
] ]
}, },
{ {
"Sequence": 255, "Sequence": 255,
"Steps": [ "Steps": [
{
"TerritoryId": 959,
"InteractionType": "Craft",
"ItemId": 38879,
"ItemCount": 2
},
{ {
"Position": { "Position": {
"X": -201.42024, "X": -201.42024,
@ -42,7 +58,9 @@
"Z": -273.68756 "Z": -273.68756
}, },
"TerritoryId": 959, "TerritoryId": 959,
"InteractionType": "WalkTo" "InteractionType": "WalkTo",
"AetheryteShortcut": "Mare Lamentorum - Bestways Burrow",
"Fly": true
}, },
{ {
"DataId": 1044403, "DataId": 1044403,

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,
@ -30,6 +29,38 @@
{ {
"Sequence": 1, "Sequence": 1,
"Steps": [ "Steps": [
{
"DataId": 1044412,
"Position": {
"X": -181.56714,
"Y": -49.19972,
"Z": -304.76843
},
"TerritoryId": 959,
"InteractionType": "Interact"
}
]
},
{
"Sequence": 2,
"Steps": [
{
"TerritoryId": 959,
"InteractionType": "Craft",
"ItemId": 38881,
"ItemCount": 1
},
{
"DataId": 1044602,
"Position": {
"X": 463.0349,
"Y": -167.81126,
"Z": -490.13504
},
"TerritoryId": 959,
"InteractionType": "Interact",
"Fly": true
}
] ]
}, },
{ {
@ -42,7 +73,9 @@
"Z": -273.68756 "Z": -273.68756
}, },
"TerritoryId": 959, "TerritoryId": 959,
"InteractionType": "WalkTo" "InteractionType": "WalkTo",
"AetheryteShortcut": "Mare Lamentorum - Bestways Burrow",
"Fly": true
}, },
{ {
"DataId": 1044403, "DataId": 1044403,

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,
@ -30,11 +29,29 @@
{ {
"Sequence": 1, "Sequence": 1,
"Steps": [ "Steps": [
{
"DataId": 1044610,
"Position": {
"X": 588.281,
"Y": -161.13907,
"Z": -761.0742
},
"TerritoryId": 959,
"InteractionType": "Interact",
"AetheryteShortcut": "Mare Lamentorum - Bestways Burrow",
"Fly": true
}
] ]
}, },
{ {
"Sequence": 255, "Sequence": 255,
"Steps": [ "Steps": [
{
"TerritoryId": 959,
"InteractionType": "Craft",
"ItemId": 38885,
"ItemCount": 1
},
{ {
"Position": { "Position": {
"X": -201.42024, "X": -201.42024,
@ -42,7 +59,9 @@
"Z": -273.68756 "Z": -273.68756
}, },
"TerritoryId": 959, "TerritoryId": 959,
"InteractionType": "WalkTo" "InteractionType": "WalkTo",
"AetheryteShortcut": "Mare Lamentorum - Bestways Burrow",
"Fly": true
}, },
{ {
"DataId": 1044403, "DataId": 1044403,

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,
@ -21,6 +20,30 @@
{ {
"Sequence": 255, "Sequence": 255,
"Steps": [ "Steps": [
{
"DataId": 2013072,
"Position": {
"X": 456.65674,
"Y": 438.04077,
"Z": 310.2312
},
"TerritoryId": 960,
"InteractionType": "Interact",
"TargetTerritoryId": 960,
"AetheryteShortcut": "Ultima Thule - Base Omicron",
"RequiredGatheredItems": [
{
"QuestAcceptedAsClass": "Miner",
"ItemId": 38283,
"ItemCount": 3
},
{
"QuestAcceptedAsClass": "Botanist",
"ItemId": 38307,
"ItemCount": 3
}
]
},
{ {
"DataId": 1043417, "DataId": 1043417,
"Position": { "Position": {

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,9 +17,66 @@
} }
] ]
}, },
{
"Sequence": 1,
"Steps": [
{
"DataId": 1044048,
"Position": {
"X": -347.70734,
"Y": 263.0844,
"Z": -463.73694
},
"TerritoryId": 960,
"InteractionType": "Interact",
"AetheryteShortcut": "Ultima Thule - Abode of the Ea",
"Fly": true,
"CompletionQuestVariablesFlags": [
null,
null,
null,
null,
null,
128
]
},
{
"DataId": 1044049,
"Position": {
"X": -376.21124,
"Y": 266.08542,
"Z": -551.90356
},
"TerritoryId": 960,
"InteractionType": "Interact",
"Fly": true,
"CompletionQuestVariablesFlags": [
null,
null,
null,
null,
null,
64
]
}
]
},
{ {
"Sequence": 255, "Sequence": 255,
"Steps": [ "Steps": [
{
"DataId": 2013072,
"Position": {
"X": 456.65674,
"Y": 438.04077,
"Z": 310.2312
},
"TerritoryId": 960,
"InteractionType": "Interact",
"TargetTerritoryId": 960,
"AetheryteShortcut": "Ultima Thule - Base Omicron"
},
{ {
"DataId": 1043417, "DataId": 1043417,
"Position": { "Position": {

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": "plogon_enjoyer",
"Disabled": true,
"QuestSequence": [ "QuestSequence": [
{ {
"Sequence": 0, "Sequence": 0,
@ -18,9 +17,65 @@
} }
] ]
}, },
{
"Sequence": 1,
"Steps": [
{
"DataId": 2013074,
"Position": {
"X": 304.3412,
"Y": 483.48206,
"Z": 143.11438
},
"TerritoryId": 960,
"InteractionType": "Interact",
"TargetTerritoryId": 1073,
"$": "Without this step, there are times where it doesn't confirm automatically"
},
{
"TerritoryId": 1073,
"InteractionType": "None",
"RequiredGatheredItems": [
{
"QuestAcceptedAsClass": "Miner",
"ItemId": 38291,
"ItemCount": 3
},
{
"QuestAcceptedAsClass": "Botanist",
"ItemId": 38315,
"ItemCount": 3
}
]
},
{
"DataId": 1044065,
"Position": {
"X": 478.9348,
"Y": 437.0016,
"Z": 340.505
},
"TerritoryId": 960,
"InteractionType": "Interact",
"AetheryteShortcut": "Ultima Thule - Base Omicron"
}
]
},
{ {
"Sequence": 255, "Sequence": 255,
"Steps": [ "Steps": [
{
"DataId": 2013072,
"Position": {
"X": 456.65674,
"Y": 438.04077,
"Z": 310.2312
},
"TerritoryId": 960,
"InteractionType": "Interact",
"TargetTerritoryId": 960,
"Mount": true
},
{ {
"DataId": 1043417, "DataId": 1043417,
"Position": { "Position": {

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": "plogon_enjoyer",
"Disabled": true,
"QuestSequence": [ "QuestSequence": [
{ {
"Sequence": 0, "Sequence": 0,
@ -18,9 +17,79 @@
} }
] ]
}, },
{
"Sequence": 1,
"Steps": [
{
"DataId": 2013073,
"Position": {
"X": 334.37085,
"Y": 483.17688,
"Z": 158.28174
},
"TerritoryId": 960,
"InteractionType": "Interact",
"TargetTerritoryId": 960,
"Mount": true
},
{
"DataId": 1044066,
"Position": {
"X": 493.58362,
"Y": 436.99985,
"Z": 317.09766
},
"TerritoryId": 960,
"InteractionType": "Interact",
"Fly": true
}
]
},
{
"Sequence": 2,
"Steps": [
{
"DataId": 1044068,
"Position": {
"X": 638.5748,
"Y": 438.6276,
"Z": 260.3341
},
"TerritoryId": 960,
"InteractionType": "Action",
"Action": "Electric Flux",
"Fly": true
},
{
"DataId": 1044069,
"Position": {
"X": 668.0552,
"Y": 440.4633,
"Z": 360.79956
},
"TerritoryId": 960,
"InteractionType": "Action",
"Action": "Electric Flux",
"Fly": true
}
]
},
{ {
"Sequence": 255, "Sequence": 255,
"Steps": [ "Steps": [
{
"DataId": 2013072,
"Position": {
"X": 456.65674,
"Y": 438.04077,
"Z": 310.2312
},
"TerritoryId": 960,
"InteractionType": "Interact",
"TargetTerritoryId": 960,
"AetheryteShortcut": "Ultima Thule - Base Omicron",
"Mount": true
},
{ {
"DataId": 1043417, "DataId": 1043417,
"Position": { "Position": {
@ -29,7 +98,8 @@
"Z": 148.11926 "Z": 148.11926
}, },
"TerritoryId": 960, "TerritoryId": 960,
"InteractionType": "CompleteQuest" "InteractionType": "CompleteQuest",
"Mount": true
} }
] ]
} }

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,9 +17,73 @@
} }
] ]
}, },
{
"Sequence": 1,
"Steps": [
{
"DataId": 2013074,
"Position": {
"X": 304.3412,
"Y": 483.48206,
"Z": 143.11438
},
"TerritoryId": 960,
"InteractionType": "Interact",
"TargetTerritoryId": 1073
},
{
"DataId": 1044075,
"Position": {
"X": -64.4389,
"Y": 493.32922,
"Z": -4.409851
},
"TerritoryId": 1073,
"InteractionType": "Interact"
}
]
},
{
"Sequence": 2,
"Steps": [
{
"DataId": 1044075,
"Position": {
"X": -64.4389,
"Y": 493.32922,
"Z": -4.409851
},
"TerritoryId": 1073,
"InteractionType": "Interact",
"RequiredGatheredItems": [
{
"QuestAcceptedAsClass": "Miner",
"ItemId": 38296,
"ItemCount": 3
},
{
"QuestAcceptedAsClass": "Botanist",
"ItemId": 38320,
"ItemCount": 3
}
]
}
]
},
{ {
"Sequence": 255, "Sequence": 255,
"Steps": [ "Steps": [
{
"DataId": 1043421,
"Position": {
"X": 2.4261475,
"Y": 499.87805,
"Z": 46.036377
},
"TerritoryId": 1073,
"InteractionType": "Interact",
"TargetTerritoryId": 960
},
{ {
"DataId": 1043417, "DataId": 1043417,
"Position": { "Position": {

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,9 +17,49 @@
} }
] ]
}, },
{
"Sequence": 1,
"Steps": [
{
"DataId": 1044081,
"Position": {
"X": -503.99023,
"Y": 74.16917,
"Z": 261.82947
},
"TerritoryId": 960,
"InteractionType": "Interact",
"AetheryteShortcut": "Ultima Thule - Reah Tahra",
"RequiredGatheredItems": [
{
"QuestAcceptedAsClass": "Miner",
"ItemId": 38299,
"ItemCount": 3
},
{
"QuestAcceptedAsClass": "Botanist",
"ItemId": 38323,
"ItemCount": 3
}
]
}
]
},
{ {
"Sequence": 255, "Sequence": 255,
"Steps": [ "Steps": [
{
"DataId": 2013072,
"Position": {
"X": 456.65674,
"Y": 438.04077,
"Z": 310.2312
},
"TerritoryId": 960,
"InteractionType": "Interact",
"TargetTerritoryId": 960,
"AetheryteShortcut": "Ultima Thule - Base Omicron"
},
{ {
"DataId": 1043417, "DataId": 1043417,
"Position": { "Position": {

View File

@ -0,0 +1,229 @@
{
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
"Author": "plogon_enjoyer",
"QuestSequence": [
{
"Sequence": 0,
"Steps": [
{
"DataId": 1043951,
"Position": {
"X": 303.8529,
"Y": 481.99442,
"Z": 154.83325
},
"TerritoryId": 960,
"InteractionType": "AcceptQuest"
}
]
},
{
"Sequence": 1,
"Steps": [
{
"DataId": 1043865,
"Position": {
"X": 301.8081,
"Y": 482.13644,
"Z": 165.02625
},
"TerritoryId": 960,
"InteractionType": "Interact",
"DialogueChoices": [
{
"Type": "YesNo",
"Prompt": "TEXT_BANOMI003_04603_Q9_000_000",
"Yes": true
}
],
"Mount": true
},
{
"DataId": 1043539,
"Position": {
"X": 205.92041,
"Y": 566,
"Z": 257.2517
},
"TerritoryId": 960,
"InteractionType": "Interact",
"Fly": true
}
]
},
{
"Sequence": 2,
"Steps": [
{
"DataId": 1043547,
"Position": {
"X": 110.30737,
"Y": 269.03677,
"Z": -626.7338
},
"TerritoryId": 960,
"InteractionType": "Interact",
"AetheryteShortcut": "Ultima Thule - Abode of the Ea",
"Fly": true
}
]
},
{
"Sequence": 3,
"Steps": [
{
"DataId": 1043552,
"Position": {
"X": 103.837524,
"Y": 269.41934,
"Z": -514.6105
},
"TerritoryId": 960,
"InteractionType": "Interact",
"Fly": true
},
{
"DataId": 1043549,
"Position": {
"X": 46.219482,
"Y": 269.597,
"Z": -474.60138
},
"TerritoryId": 960,
"InteractionType": "Interact",
"Fly": true
}
]
},
{
"Sequence": 4,
"Steps": [
{
"DataId": 1043547,
"Position": {
"X": 110.30737,
"Y": 269.03677,
"Z": -626.7338
},
"TerritoryId": 960,
"InteractionType": "Interact",
"Fly": true
}
]
},
{
"Sequence": 5,
"Steps": [
{
"DataId": 1043549,
"Position": {
"X": 46.219482,
"Y": 269.597,
"Z": -474.60138
},
"TerritoryId": 960,
"InteractionType": "Interact",
"Fly": true,
"DialogueChoices": [
{
"Type": "YesNo",
"Prompt": "TEXT_BANOMI003_04603_Q2_000_000",
"Yes": true
}
]
}
]
},
{
"Sequence": 6,
"Steps": [
{
"TerritoryId": 960,
"InteractionType": "None",
"RequiredGatheredItems": [
{
"QuestAcceptedAsClass": "Miner",
"ItemId": 38278,
"ItemCount": 3
},
{
"QuestAcceptedAsClass": "Botanist",
"ItemId": 38302,
"ItemCount": 3
}
],
"Fly": true
},
{
"DataId": 2013072,
"Position": {
"X": 456.65674,
"Y": 438.04077,
"Z": 310.2312
},
"TerritoryId": 960,
"InteractionType": "Interact",
"AetheryteShortcut": "Ultima Thule - Base Omicron",
"TargetTerritoryId": 960,
"Mount": true
},
{
"DataId": 1043865,
"Position": {
"X": 301.8081,
"Y": 482.13644,
"Z": 165.02625
},
"TerritoryId": 960,
"InteractionType": "Interact",
"TargetTerritoryId": 960,
"Fly": true
},
{
"DataId": 1043585,
"Position": {
"X": 203.84521,
"Y": 567.4998,
"Z": 246.87573
},
"TerritoryId": 960,
"InteractionType": "Interact",
"Fly": true
}
]
},
{
"Sequence": 255,
"Steps": [
{
"DataId": 1043864,
"Position": {
"X": 244.83093,
"Y": 564.8203,
"Z": 261.76843
},
"TerritoryId": 960,
"InteractionType": "Interact",
"Fly": true,
"DialogueChoices": [
{
"Type": "YesNo",
"Prompt": "TEXT_BANOMI003_04603_Q8_000_000",
"Yes": true
}
]
},
{
"DataId": 1043951,
"Position": {
"X": 303.8529,
"Y": 481.99442,
"Z": 154.83325
},
"TerritoryId": 960,
"InteractionType": "CompleteQuest"
}
]
}
]
}

View File

@ -20,6 +20,15 @@
{ {
"Sequence": 1, "Sequence": 1,
"Steps": [ "Steps": [
{
"Position": {
"X": -392.35907,
"Y": -14.000012,
"Z": 635.3141
},
"TerritoryId": 1191,
"InteractionType": "WalkTo"
},
{ {
"Position": { "Position": {
"X": -415.87146, "X": -415.87146,

View File

@ -55,6 +55,24 @@
{ {
"Sequence": 255, "Sequence": 255,
"Steps": [ "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, "DataId": 2013966,
"Position": { "Position": {

View File

@ -69,6 +69,7 @@
"Y": 0.003171, "Y": 0.003171,
"Z": 1.296936 "Z": 1.296936
}, },
"StopDistance": 5,
"TerritoryId": 1171, "TerritoryId": 1171,
"InteractionType": "CompleteQuest" "InteractionType": "CompleteQuest"
} }

View File

@ -21,6 +21,34 @@
{ {
"Sequence": 1, "Sequence": 1,
"Steps": [ "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, "DataId": 1048053,
"Position": { "Position": {
@ -29,8 +57,7 @@
"Z": -828.58014 "Z": -828.58014
}, },
"TerritoryId": 1191, "TerritoryId": 1191,
"InteractionType": "Interact", "InteractionType": "Interact"
"AetheryteShortcut": "Heritage Found - The Outskirts"
} }
] ]
}, },

View File

@ -37,6 +37,17 @@
{ {
"Sequence": 2, "Sequence": 2,
"Steps": [ "Steps": [
{
"DataId": 1049505,
"Position": {
"X": -209.85736,
"Y": 7.49638,
"Z": 595.9104
},
"TerritoryId": 1191,
"InteractionType": "AcceptQuest",
"PickUpQuestId": 5159
},
{ {
"DataId": 1048099, "DataId": 1048099,
"Position": { "Position": {
@ -53,6 +64,17 @@
{ {
"Sequence": 3, "Sequence": 3,
"Steps": [ "Steps": [
{
"DataId": 1049501,
"Position": {
"X": -592.7062,
"Y": -2.4803436,
"Z": -489.28055
},
"TerritoryId": 1191,
"InteractionType": "AcceptQuest",
"PickUpQuestId": 5156
},
{ {
"DataId": 1048116, "DataId": 1048116,
"Position": { "Position": {

View File

@ -32,7 +32,8 @@
"Z": -565.48413 "Z": -565.48413
}, },
"TerritoryId": 1191, "TerritoryId": 1191,
"InteractionType": "Interact" "InteractionType": "Interact",
"Fly": true
} }
] ]
}, },

View File

@ -21,6 +21,17 @@
{ {
"Sequence": 1, "Sequence": 1,
"Steps": [ "Steps": [
{
"DataId": 1050617,
"Position": {
"X": -631.4031,
"Y": 2.9305653E-07,
"Z": 497.12354
},
"TerritoryId": 1192,
"InteractionType": "AcceptQuest",
"PickUpQuestId": 5174
},
{ {
"DataId": 1047884, "DataId": 1047884,
"Position": { "Position": {

View File

@ -21,6 +21,41 @@
{ {
"Sequence": 1, "Sequence": 1,
"Steps": [ "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, "DataId": 1047917,
"Position": { "Position": {

View File

@ -21,6 +21,44 @@
{ {
"Sequence": 1, "Sequence": 1,
"Steps": [ "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, "DataId": 1047971,
"Position": { "Position": {

View File

@ -33,8 +33,12 @@
}, },
"TerritoryId": 1192, "TerritoryId": 1192,
"InteractionType": "WalkTo", "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, "DataId": 1048014,
@ -44,7 +48,8 @@
"Z": 363.05774 "Z": 363.05774
}, },
"TerritoryId": 1192, "TerritoryId": 1192,
"InteractionType": "Interact" "InteractionType": "Interact",
"Fly": true
} }
] ]
}, },

View File

@ -0,0 +1,188 @@
{
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
"Author": "liza",
"QuestSequence": [
{
"Sequence": 0,
"Steps": [
{
"DataId": 1050998,
"Position": {
"X": 4.0131226,
"Y": 44.499996,
"Z": 126.17676
},
"TerritoryId": 128,
"InteractionType": "AcceptQuest",
"AetheryteShortcut": "Limsa Lominsa",
"AethernetShortcut": [
"[Limsa Lominsa] Aetheryte Plaza",
"[Limsa Lominsa] The Aftcastle"
],
"SkipConditions": {
"AetheryteShortcutIf": {
"InSameTerritory": true,
"InTerritory": [
128
]
}
}
}
]
},
{
"Sequence": 1,
"Steps": [
{
"DataId": 1050999,
"Position": {
"X": 4.837097,
"Y": 31.47563,
"Z": -256.97723
},
"TerritoryId": 128,
"InteractionType": "Interact",
"AethernetShortcut": [
"[Limsa Lominsa] The Aftcastle",
"[Limsa Lominsa] Marauders' Guild"
]
}
]
},
{
"Sequence": 2,
"Steps": [
{
"DataId": 1051000,
"Position": {
"X": -100.175476,
"Y": 18.00033,
"Z": -15.030151
},
"TerritoryId": 129,
"InteractionType": "Interact",
"AethernetShortcut": [
"[Limsa Lominsa] Marauders' Guild",
"[Limsa Lominsa] Aetheryte Plaza"
]
}
]
},
{
"Sequence": 3,
"Steps": [
{
"DataId": 1001217,
"Position": {
"X": -140.85602,
"Y": 18.199999,
"Z": 17.013733
},
"TerritoryId": 129,
"InteractionType": "Interact",
"CompletionQuestVariablesFlags": [
null,
null,
null,
null,
null,
64
]
},
{
"DataId": 1051003,
"Position": {
"X": -188.12854,
"Y": 16,
"Z": 33.37146
},
"TerritoryId": 129,
"InteractionType": "Interact",
"CompletionQuestVariablesFlags": [
null,
null,
null,
null,
null,
32
]
},
{
"DataId": 1051002,
"Position": {
"X": -205.005,
"Y": 15.999994,
"Z": 71.97681
},
"TerritoryId": 129,
"InteractionType": "Interact",
"CompletionQuestVariablesFlags": [
null,
null,
null,
null,
null,
128
]
},
{
"DataId": 1051004,
"Position": {
"X": -243.03046,
"Y": 16.199997,
"Z": 40.97046
},
"TerritoryId": 129,
"InteractionType": "Interact",
"CompletionQuestVariablesFlags": [
null,
null,
null,
null,
null,
16
]
}
]
},
{
"Sequence": 4,
"Steps": [
{
"DataId": 2014209,
"Position": {
"X": -385.1225,
"Y": 5.996765,
"Z": 33.707153
},
"TerritoryId": 129,
"InteractionType": "Interact",
"AethernetShortcut": [
"[Limsa Lominsa] Hawkers' Alley",
"[Limsa Lominsa] Arcanists' Guild"
]
}
]
},
{
"Sequence": 255,
"Steps": [
{
"DataId": 1051001,
"Position": {
"X": 3.7994385,
"Y": 44.499992,
"Z": 126.05469
},
"TerritoryId": 128,
"InteractionType": "CompleteQuest",
"AethernetShortcut": [
"[Limsa Lominsa] Arcanists' Guild",
"[Limsa Lominsa] The Aftcastle"
],
"NextQuestId": 5016
}
]
}
]
}

View File

@ -0,0 +1,128 @@
{
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
"Author": "liza",
"QuestSequence": [
{
"Sequence": 0,
"Steps": [
{
"DataId": 1051007,
"Position": {
"X": 2.2735596,
"Y": 44.499992,
"Z": 125.200195
},
"StopDistance": 5,
"TerritoryId": 128,
"InteractionType": "AcceptQuest",
"AetheryteShortcut": "Limsa Lominsa",
"AethernetShortcut": [
"[Limsa Lominsa] Aetheryte Plaza",
"[Limsa Lominsa] The Aftcastle"
],
"SkipConditions": {
"AetheryteShortcutIf": {
"InSameTerritory": true,
"InTerritory": [
128
]
}
}
}
]
},
{
"Sequence": 1,
"Steps": [
{
"DataId": 1051008,
"Position": {
"X": 2.5481567,
"Y": 43.999977,
"Z": -206.71399
},
"TerritoryId": 128,
"InteractionType": "Interact",
"AethernetShortcut": [
"[Limsa Lominsa] The Aftcastle",
"[Limsa Lominsa] Marauders' Guild"
]
}
]
},
{
"Sequence": 2,
"Steps": [
{
"DataId": 1051009,
"Position": {
"X": 1.5106201,
"Y": 44,
"Z": -205.8595
},
"TerritoryId": 128,
"InteractionType": "Interact",
"StopDistance": 5
}
]
},
{
"Sequence": 3,
"Steps": [
{
"DataId": 2014210,
"Position": {
"X": -176.62323,
"Y": 40.97046,
"Z": 185.35132
},
"TerritoryId": 128,
"InteractionType": "Interact",
"AethernetShortcut": [
"[Limsa Lominsa] Marauders' Guild",
"[Limsa Lominsa] The Aftcastle"
]
}
]
},
{
"Sequence": 4,
"Steps": [
{
"DataId": 1051010,
"Position": {
"X": -178.11859,
"Y": 40.999958,
"Z": 184.67993
},
"StopDistance": 5,
"TerritoryId": 128,
"InteractionType": "Interact"
}
]
},
{
"Sequence": 255,
"Steps": [
{
"DataId": 1051011,
"Position": {
"X": -178.63745,
"Y": 40.999916,
"Z": 186.3584
},
"StopDistance": 7,
"TerritoryId": 128,
"InteractionType": "CompleteQuest",
"DialogueChoices": [
{
"Type": "YesNo",
"Prompt": "TEXT_FESANX002_05016_Q52_000_082",
"Yes": true
}
]
}
]
}
]
}

View File

@ -99,7 +99,7 @@ internal sealed class ContextMenuController : IDisposable
if (agentSatisfactionSupply->IsAgentActive()) if (agentSatisfactionSupply->IsAgentActive())
{ {
int maxTurnIns = agentSatisfactionSupply->NpcInfo.SatisfactionRank == 1 ? 3 : 6; int maxTurnIns = agentSatisfactionSupply->NpcInfo.SatisfactionRank == 1 ? 3 : 6;
quantityToGather = Math.Min(agentSatisfactionSupply->RemainingAllowances, quantityToGather = Math.Min(agentSatisfactionSupply->NpcData.RemainingAllowances,
((AgentSatisfactionSupply2*)agentSatisfactionSupply)->CalculateTurnInsToNextRank(maxTurnIns)); ((AgentSatisfactionSupply2*)agentSatisfactionSupply)->CalculateTurnInsToNextRank(maxTurnIns));
} }
} }

View File

@ -42,6 +42,7 @@ internal sealed class InteractionUiController : IDisposable
private readonly GatheringPointRegistry _gatheringPointRegistry; private readonly GatheringPointRegistry _gatheringPointRegistry;
private readonly QuestRegistry _questRegistry; private readonly QuestRegistry _questRegistry;
private readonly QuestData _questData; private readonly QuestData _questData;
private readonly TerritoryData _territoryData;
private readonly IGameGui _gameGui; private readonly IGameGui _gameGui;
private readonly ITargetManager _targetManager; private readonly ITargetManager _targetManager;
private readonly IClientState _clientState; private readonly IClientState _clientState;
@ -61,6 +62,7 @@ internal sealed class InteractionUiController : IDisposable
GatheringPointRegistry gatheringPointRegistry, GatheringPointRegistry gatheringPointRegistry,
QuestRegistry questRegistry, QuestRegistry questRegistry,
QuestData questData, QuestData questData,
TerritoryData territoryData,
IGameGui gameGui, IGameGui gameGui,
ITargetManager targetManager, ITargetManager targetManager,
IPluginLog pluginLog, IPluginLog pluginLog,
@ -77,6 +79,7 @@ internal sealed class InteractionUiController : IDisposable
_gatheringPointRegistry = gatheringPointRegistry; _gatheringPointRegistry = gatheringPointRegistry;
_questRegistry = questRegistry; _questRegistry = questRegistry;
_questData = questData; _questData = questData;
_territoryData = territoryData;
_gameGui = gameGui; _gameGui = gameGui;
_targetManager = targetManager; _targetManager = targetManager;
_clientState = clientState; _clientState = clientState;
@ -101,7 +104,9 @@ internal sealed class InteractionUiController : IDisposable
} }
} }
private bool ShouldHandleUiInteractions => _isInitialCheck || _questController.IsRunning; private bool ShouldHandleUiInteractions => _isInitialCheck ||
_questController.IsRunning ||
_territoryData.IsQuestBattleInstance(_clientState.TerritoryType);
internal unsafe void HandleCurrentDialogueChoices() internal unsafe void HandleCurrentDialogueChoices()
{ {

View File

@ -735,7 +735,9 @@ internal sealed class QuestController : MiniTaskController<QuestController>, IDi
return false; return false;
QuestStep? currentStep = currentSequence?.FindStep(currentQuest.Step); 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() public bool TryPickPriorityQuest()

View File

@ -44,7 +44,7 @@ internal static class TurnInDelivery
if (addon == null || !LAddon.IsAddonReady(addon)) if (addon == null || !LAddon.IsAddonReady(addon))
return ETaskResult.StillRunning; return ETaskResult.StillRunning;
ushort remainingAllowances = agentSatisfactionSupply->RemainingAllowances; ushort remainingAllowances = agentSatisfactionSupply->NpcData.RemainingAllowances;
if (remainingAllowances == 0) if (remainingAllowances == 0)
{ {
logger.LogInformation("No remaining weekly allowances"); logger.LogInformation("No remaining weekly allowances");

View File

@ -41,7 +41,7 @@ internal static class Combat
ArgumentNullException.ThrowIfNull(step.DataId); ArgumentNullException.ThrowIfNull(step.DataId);
yield return interactFactory.Interact(step.DataId.Value, quest, EInteractionType.None, true); 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); yield return CreateTask(quest, sequence, step);
break; break;
} }
@ -53,14 +53,14 @@ internal static class Combat
yield return useItemFactory.OnObject(quest.Id, step.DataId.Value, step.ItemId.Value, yield return useItemFactory.OnObject(quest.Id, step.DataId.Value, step.ItemId.Value,
step.CompletionQuestVariablesFlags, true); 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); yield return CreateTask(quest, sequence, step);
break; break;
} }
case EEnemySpawnType.AutoOnEnterArea: case EEnemySpawnType.AutoOnEnterArea:
if (step.CombatDelaySecondsAtStart == null) 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 // automatically triggered when entering area, i.e. only unmount
yield return CreateTask(quest, sequence, step); yield return CreateTask(quest, sequence, step);

View File

@ -28,6 +28,9 @@ internal static class Interact
if (step.Emote != null) if (step.Emote != null)
yield break; yield break;
if (step.ChatMessage != null)
yield break;
if (step.DataId == null) if (step.DataId == null)
yield break; yield break;
} }
@ -174,6 +177,14 @@ internal static class Interact
logger.LogInformation("Interaction was most likely triggered"); logger.LogInformation("Interaction was most likely triggered");
_interactionState = EInteractionState.InteractionConfirmed; _interactionState = EInteractionState.InteractionConfirmed;
} }
else if (dataId is >= 1047901 and <= 1047905 &&
condition[ConditionFlag.Disguised] &&
flag == ConditionFlag.Mounting71 && // why the fuck is this the flag that's used, instead of OccupiedIn[Quest]Event
value)
{
logger.LogInformation("(A Knight of Alexandria) Interaction was most likely triggered");
_interactionState = EInteractionState.InteractionConfirmed;
}
} }
private enum EInteractionState private enum EInteractionState

View File

@ -17,7 +17,12 @@ internal static class Say
{ {
public IEnumerable<ITask> CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) public IEnumerable<ITask> CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step)
{ {
if (step.InteractionType != EInteractionType.Say) if (step.InteractionType is EInteractionType.AcceptQuest or EInteractionType.CompleteQuest)
{
if (step.ChatMessage == null)
return [];
}
else if (step.InteractionType != EInteractionType.Say)
return []; return [];

View File

@ -142,10 +142,10 @@ internal static class AethernetShortcut
logger.LogInformation("Moving to S9 aetheryte"); logger.LogInformation("Moving to S9 aetheryte");
List<Vector3> nearbyPoints = List<Vector3> nearbyPoints =
[ [
new(7.225532f, 8.467899f, -7.1670876f), new(0, 8.442986f, 9),
new(7.177844f, 8.467899f, 7.2216787f), new(9, 8.442986f, 0),
new(-7.0762224f, 8.467898f, 7.1924725f), new(-9, 8.442986f, 0),
new(-7.1289554f, 8.467898f, -7.0594683f) new(0, 8.442986f, -9),
]; ];
Vector3 closestPoint = nearbyPoints.MinBy(x => (playerPosition - x).Length()); Vector3 closestPoint = nearbyPoints.MinBy(x => (playerPosition - x).Length());

View File

@ -82,6 +82,7 @@ internal static class GatheringRequiredItems
"Wait(navmesh ready)"); "Wait(navmesh ready)");
yield return CreateStartGatheringTask(gatheringPointId, requiredGatheredItems); yield return CreateStartGatheringTask(gatheringPointId, requiredGatheredItems);
yield return new WaitAtEnd.WaitDelay();
} }
} }

View File

@ -12,7 +12,7 @@ internal sealed class TerritoryData
{ {
private readonly ImmutableDictionary<uint, string> _territoryNames; private readonly ImmutableDictionary<uint, string> _territoryNames;
private readonly ImmutableHashSet<ushort> _territoriesWithMount; private readonly ImmutableHashSet<ushort> _territoriesWithMount;
private readonly ImmutableHashSet<ushort> _dutyTerritories; private readonly ImmutableDictionary<ushort, uint> _dutyTerritories;
private readonly ImmutableDictionary<ushort, string> _instanceNames; private readonly ImmutableDictionary<ushort, string> _instanceNames;
public TerritoryData(IDataManager dataManager) public TerritoryData(IDataManager dataManager)
@ -35,8 +35,7 @@ internal sealed class TerritoryData
_dutyTerritories = dataManager.GetExcelSheet<TerritoryType>()! _dutyTerritories = dataManager.GetExcelSheet<TerritoryType>()!
.Where(x => x.RowId > 0 && x.ContentFinderCondition.Row != 0) .Where(x => x.RowId > 0 && x.ContentFinderCondition.Row != 0)
.Select(x => (ushort)x.RowId) .ToImmutableDictionary(x => (ushort)x.RowId, x => x.ContentFinderCondition.Value!.ContentType.Row);
.ToImmutableHashSet();
_instanceNames = dataManager.GetExcelSheet<ContentFinderCondition>()! _instanceNames = dataManager.GetExcelSheet<ContentFinderCondition>()!
.Where(x => x.RowId > 0 && x.Content != 0 && x.ContentLinkType == 1 && x.ContentType.Row != 6) .Where(x => x.RowId > 0 && x.Content != 0 && x.ContentLinkType == 1 && x.ContentType.Row != 6)
@ -56,7 +55,10 @@ internal sealed class TerritoryData
public bool CanUseMount(ushort territoryId) => _territoriesWithMount.Contains(territoryId); public bool CanUseMount(ushort territoryId) => _territoriesWithMount.Contains(territoryId);
public bool IsDutyInstance(ushort territoryId) => _dutyTerritories.Contains(territoryId); public bool IsDutyInstance(ushort territoryId) => _dutyTerritories.ContainsKey(territoryId);
public bool IsQuestBattleInstance(ushort territoryId) =>
_dutyTerritories.TryGetValue(territoryId, out uint contentType) && contentType == 7;
public string? GetInstanceName(ushort instanceId) => _instanceNames.GetValueOrDefault(instanceId); public string? GetInstanceName(ushort instanceId) => _instanceNames.GetValueOrDefault(instanceId);
} }

View File

@ -360,6 +360,9 @@ internal sealed unsafe class QuestFunctions
{ {
if (IsQuestAccepted(questId)) if (IsQuestAccepted(questId))
return false; return false;
if (QuestManager.Instance()->IsDailyQuestCompleted(questId.Value))
return false;
} }
else else
{ {

View File

@ -39,7 +39,7 @@ internal sealed class QuestInfo : IQuestInfo
{ {
new(new QuestId((ushort)(quest.PreviousQuest[0].Row & 0xFFFF)), quest.Unknown7), new(new QuestId((ushort)(quest.PreviousQuest[0].Row & 0xFFFF)), quest.Unknown7),
new(new QuestId((ushort)(quest.PreviousQuest[1].Row & 0xFFFF))), new(new QuestId((ushort)(quest.PreviousQuest[1].Row & 0xFFFF))),
new(new QuestId((ushort)(quest.PreviousQuest[1].Row & 0xFFFF))) new(new QuestId((ushort)(quest.PreviousQuest[2].Row & 0xFFFF)))
} }
.Where(x => x.QuestId.Value != 0) .Where(x => x.QuestId.Value != 0)
.ToImmutableList(); .ToImmutableList();

View File

@ -110,6 +110,18 @@ internal sealed class CreationUtilsComponent
} }
#endif #endif
#if false
var questManager = QuestManager.Instance();
if (questManager != null)
{
for (int i = 0; i < questManager->DailyQuests.Length; ++i)
{
var dailyQuest = questManager->DailyQuests[i];
ImGui.Text($"Daily Quest {i}: {dailyQuest.QuestId}, {dailyQuest.IsCompleted}");
}
}
#endif
#if false #if false
var director = UIState.Instance()->DirectorTodo.Director; var director = UIState.Instance()->DirectorTodo.Director;
if (director != null) if (director != null)

View File

@ -20,8 +20,7 @@ internal sealed class EventInfoComponent
{ {
private readonly List<EventQuest> _eventQuests = private readonly List<EventQuest> _eventQuests =
[ [
new EventQuest("Moonfire Faire", [new(5182), new(5183)], new("The Rising", [new(5015), new(5016)], AtDailyReset(new(2024, 9, 11))),
new DateTime(new DateOnly(2024, 8, 26), new TimeOnly(14, 59), DateTimeKind.Utc)),
]; ];
private readonly QuestData _questData; private readonly QuestData _questData;
@ -47,6 +46,11 @@ internal sealed class EventInfoComponent
_pluginInterface = pluginInterface; _pluginInterface = pluginInterface;
} }
private static DateTime AtDailyReset(DateOnly date)
{
return new DateTime(date, new TimeOnly(14, 59), DateTimeKind.Utc);
}
public bool ShouldDraw => _configuration.General.ShowIncompleteSeasonalEvents && _eventQuests.Any(IsIncomplete); public bool ShouldDraw => _configuration.General.ShowIncompleteSeasonalEvents && _eventQuests.Any(IsIncomplete);
public void Draw() public void Draw()
@ -75,10 +79,10 @@ internal sealed class EventInfoComponent
width -= ImGui.CalcTextSize(FontAwesomeIcon.Check.ToIconString()).X; width -= ImGui.CalcTextSize(FontAwesomeIcon.Check.ToIconString()).X;
List<QuestId> startableQuests = eventQuest.QuestIds.Where(x => List<QuestId> startableQuests = eventQuest.QuestIds.Where(x =>
_questRegistry.IsKnownQuest(x) && _questRegistry.IsKnownQuest(x) &&
_questFunctions.IsReadyToAcceptQuest(x) && _questFunctions.IsReadyToAcceptQuest(x) &&
x != _questController.StartedQuest?.Quest.Id && x != _questController.StartedQuest?.Quest.Id &&
x != _questController.NextQuest?.Quest.Id) x != _questController.NextQuest?.Quest.Id)
.ToList(); .ToList();
if (startableQuests.Count == 0) if (startableQuests.Count == 0)
width = 0; width = 0;

View File

@ -200,7 +200,7 @@ internal sealed class QuestTooltipComponent
if (questInfo.IsMainScenarioQuest) if (questInfo.IsMainScenarioQuest)
name += $" ({questInfo.QuestId}, MSQ)"; name += $" ({questInfo.QuestId}, MSQ)";
else else
name += $" {questInfo.Name} ({questInfo.QuestId})"; name += $" ({questInfo.QuestId})";
return name; return name;
} }

View File

@ -226,9 +226,7 @@ internal sealed class QuestSelectionWindow : LWindow
if (knownQuest != null && if (knownQuest != null &&
knownQuest.FindSequence(0)?.LastStep()?.InteractionType is EInteractionType.AcceptQuest knownQuest.FindSequence(0)?.LastStep()?.InteractionType is EInteractionType.AcceptQuest
or EInteractionType.AcceptLeve && or EInteractionType.AcceptLeve &&
!_questFunctions.IsQuestAccepted(quest.QuestId) && _questFunctions.IsReadyToAcceptQuest(quest.QuestId))
!_questFunctions.IsQuestLocked(quest.QuestId) &&
(quest.IsRepeatable || !_questFunctions.IsQuestAcceptedOrComplete(quest.QuestId)))
{ {
ImGui.BeginDisabled(_questController.NextQuest != null || _questController.SimulatedQuest != null); ImGui.BeginDisabled(_questController.NextQuest != null || _questController.SimulatedQuest != null);