using System; using System.Collections.Generic; using System.Runtime.InteropServices; using Questionable.Model.Changelog; namespace Questionable.Data; internal static class ChangelogData { public static readonly List Changelogs; static ChangelogData() { int num = 48; List list = new List(num); CollectionsMarshal.SetCount(list, num); Span span = CollectionsMarshal.AsSpan(list); int num2 = 0; ref ChangelogEntry reference = ref span[num2]; DateOnly releaseDate = new DateOnly(2025, 12, 21); int num3 = 1; List list2 = new List(num3); CollectionsMarshal.SetCount(list2, num3); Span span2 = CollectionsMarshal.AsSpan(list2); int index = 0; ref ChangeEntry reference2 = ref span2[index]; int num4 = 1; List list3 = new List(num4); CollectionsMarshal.SetCount(list3, num4); Span span3 = CollectionsMarshal.AsSpan(list3); int index2 = 0; span3[index2] = "Fixed changelog version checks"; reference2 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list3); reference = new ChangelogEntry("7.4.3", releaseDate, list2); num2++; ref ChangelogEntry reference3 = ref span[num2]; DateOnly releaseDate2 = new DateOnly(2025, 12, 20); index = 2; List list4 = new List(index); CollectionsMarshal.SetCount(list4, index); Span span4 = CollectionsMarshal.AsSpan(list4); num3 = 0; ref ChangeEntry reference4 = ref span4[num3]; index2 = 1; List list5 = new List(index2); CollectionsMarshal.SetCount(list5, index2); Span span5 = CollectionsMarshal.AsSpan(list5); num4 = 0; span5[num4] = "Add 7.4 Starlight Celebration (2025) quest"; reference4 = new ChangeEntry(EChangeCategory.QuestUpdates, "New Quest Paths", list5); num3++; ref ChangeEntry reference5 = ref span4[num3]; num4 = 1; List list6 = new List(num4); CollectionsMarshal.SetCount(list6, num4); Span span6 = CollectionsMarshal.AsSpan(list6); index2 = 0; span6[index2] = "Fixed 7.4 MSQ"; reference5 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list6); reference3 = new ChangelogEntry("7.4.2", releaseDate2, list4); num2++; ref ChangelogEntry reference6 = ref span[num2]; DateOnly releaseDate3 = new DateOnly(2025, 12, 19); num3 = 1; List list7 = new List(num3); CollectionsMarshal.SetCount(list7, num3); Span span7 = CollectionsMarshal.AsSpan(list7); index = 0; ref ChangeEntry reference7 = ref span7[index]; index2 = 2; List list8 = new List(index2); CollectionsMarshal.SetCount(list8, index2); Span span8 = CollectionsMarshal.AsSpan(list8); num4 = 0; span8[num4] = "Add 7.4 MSQ"; num4++; span8[num4] = "Add 7.4 Arcadion Raid quests"; reference7 = new ChangeEntry(EChangeCategory.QuestUpdates, "New Quest Paths", list8); reference6 = new ChangelogEntry("7.4.1", releaseDate3, list7); num2++; ref ChangelogEntry reference8 = ref span[num2]; DateOnly releaseDate4 = new DateOnly(2025, 12, 17); index = 1; List list9 = new List(index); CollectionsMarshal.SetCount(list9, index); Span span9 = CollectionsMarshal.AsSpan(list9); num3 = 0; span9[num3] = new ChangeEntry(EChangeCategory.Changed, "Api 14 update"); reference8 = new ChangelogEntry("7.4.0", releaseDate4, list9); num2++; ref ChangelogEntry reference9 = ref span[num2]; DateOnly releaseDate5 = new DateOnly(2025, 12, 6); num3 = 2; List list10 = new List(num3); CollectionsMarshal.SetCount(list10, num3); Span span10 = CollectionsMarshal.AsSpan(list10); index = 0; ref ChangeEntry reference10 = ref span10[index]; num4 = 4; List list11 = new List(num4); CollectionsMarshal.SetCount(list11, num4); Span span11 = CollectionsMarshal.AsSpan(list11); index2 = 0; span11[index2] = "Added reloading and rebuilding to movement system"; index2++; span11[index2] = "Improved interrupts and refresh states to allow continuation of questing"; index2++; span11[index2] = "Added player input detection to stop automation when manually moving character"; index2++; span11[index2] = "Added various missing quest sequences"; reference10 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list11); index++; ref ChangeEntry reference11 = ref span10[index]; index2 = 1; List list12 = new List(index2); CollectionsMarshal.SetCount(list12, index2); Span span12 = CollectionsMarshal.AsSpan(list12); num4 = 0; span12[num4] = "Fixed reset task state to prevent stuck interactions after interruption"; reference11 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list12); reference9 = new ChangelogEntry("7.38.9", releaseDate5, list10); num2++; ref ChangelogEntry reference12 = ref span[num2]; DateOnly releaseDate6 = new DateOnly(2025, 11, 29); index = 2; List list13 = new List(index); CollectionsMarshal.SetCount(list13, index); Span span13 = CollectionsMarshal.AsSpan(list13); num3 = 0; ref ChangeEntry reference13 = ref span13[num3]; num4 = 3; List list14 = new List(num4); CollectionsMarshal.SetCount(list14, num4); Span span14 = CollectionsMarshal.AsSpan(list14); index2 = 0; span14[index2] = "Movement update with automatic retrying if character can't reach target position"; index2++; span14[index2] = "Added Hunt mob data"; index2++; span14[index2] = "Refactored commands"; reference13 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list14); num3++; ref ChangeEntry reference14 = ref span13[num3]; index2 = 3; List list15 = new List(index2); CollectionsMarshal.SetCount(list15, index2); Span span15 = CollectionsMarshal.AsSpan(list15); num4 = 0; span15[num4] = "Fixed quest (Way of the Archer)"; num4++; span15[num4] = "Fixed quest (Spirithold Broken)"; num4++; span15[num4] = "Fixed quest (It's Probably Not Pirates)"; reference14 = new ChangeEntry(EChangeCategory.Fixed, "Bug fixes", list15); reference12 = new ChangelogEntry("7.38.8", releaseDate6, list13); num2++; ref ChangelogEntry reference15 = ref span[num2]; DateOnly releaseDate7 = new DateOnly(2025, 11, 25); num3 = 2; List list16 = new List(num3); CollectionsMarshal.SetCount(list16, num3); Span span16 = CollectionsMarshal.AsSpan(list16); index = 0; ref ChangeEntry reference16 = ref span16[index]; num4 = 2; List list17 = new List(num4); CollectionsMarshal.SetCount(list17, num4); Span span17 = CollectionsMarshal.AsSpan(list17); index2 = 0; span17[index2] = "Added individual sequence stop condition for each quest"; index2++; span17[index2] = "Added Trials to Duties tab in config"; reference16 = new ChangeEntry(EChangeCategory.Added, "Major features", list17); index++; ref ChangeEntry reference17 = ref span16[index]; index2 = 1; List list18 = new List(index2); CollectionsMarshal.SetCount(list18, index2); Span span18 = CollectionsMarshal.AsSpan(list18); num4 = 0; span18[num4] = "Added IPC for stop conditions: GetQuestSequenceStopCondition, SetQuestSequenceStopCondition, RemoveQuestSequenceStopCondition, GetAllQuestSequenceStopConditions"; reference17 = new ChangeEntry(EChangeCategory.Added, "IPC changes", list18); reference15 = new ChangelogEntry("7.38.7", releaseDate7, list16); num2++; ref ChangelogEntry reference18 = ref span[num2]; DateOnly releaseDate8 = new DateOnly(2025, 11, 25); index = 3; List list19 = new List(index); CollectionsMarshal.SetCount(list19, index); Span span19 = CollectionsMarshal.AsSpan(list19); num3 = 0; ref ChangeEntry reference19 = ref span19[num3]; num4 = 2; List list20 = new List(num4); CollectionsMarshal.SetCount(list20, num4); Span span20 = CollectionsMarshal.AsSpan(list20); index2 = 0; span20[index2] = "Updated Allied Society journal text"; index2++; span20[index2] = "Improved Allied Society rank handling"; reference19 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list20); num3++; ref ChangeEntry reference20 = ref span19[num3]; index2 = 1; List list21 = new List(index2); CollectionsMarshal.SetCount(list21, index2); Span span21 = CollectionsMarshal.AsSpan(list21); num4 = 0; span21[num4] = "Added IPC for Allied Society: AddAlliedSocietyOptimalQuests, GetAlliedSocietyOptimalQuests"; reference20 = new ChangeEntry(EChangeCategory.Added, "IPC changes", list21); num3++; ref ChangeEntry reference21 = ref span19[num3]; num4 = 1; List list22 = new List(num4); CollectionsMarshal.SetCount(list22, num4); Span span22 = CollectionsMarshal.AsSpan(list22); index2 = 0; span22[index2] = "Fixed quest (We Come in Peace)"; reference21 = new ChangeEntry(EChangeCategory.Fixed, "Bug fixes", list22); reference18 = new ChangelogEntry("7.38.6", releaseDate8, list19); num2++; ref ChangelogEntry reference22 = ref span[num2]; DateOnly releaseDate9 = new DateOnly(2025, 11, 24); num3 = 2; List list23 = new List(num3); CollectionsMarshal.SetCount(list23, num3); Span span23 = CollectionsMarshal.AsSpan(list23); index = 0; ref ChangeEntry reference23 = ref span23[index]; index2 = 1; List list24 = new List(index2); CollectionsMarshal.SetCount(list24, index2); Span span24 = CollectionsMarshal.AsSpan(list24); num4 = 0; span24[num4] = "Added Allied Society daily allowance tracker with bulk quest adding buttons"; reference23 = new ChangeEntry(EChangeCategory.Added, "Major features", list24); index++; ref ChangeEntry reference24 = ref span23[index]; num4 = 1; List list25 = new List(num4); CollectionsMarshal.SetCount(list25, num4); Span span25 = CollectionsMarshal.AsSpan(list25); index2 = 0; span25[index2] = "Added IPC for Allied Society: GetRemainingAllowances, GetTimeUntilReset, GetAvailableQuestIds, GetAllAvailableQuestCounts, IsMaxRank, GetCurrentRank, GetSocietiesWithAvailableQuests"; reference24 = new ChangeEntry(EChangeCategory.Added, "IPC changes", list25); reference22 = new ChangelogEntry("7.38.5", releaseDate9, list23); num2++; ref ChangelogEntry reference25 = ref span[num2]; DateOnly releaseDate10 = new DateOnly(2025, 11, 23); index = 2; List list26 = new List(index); CollectionsMarshal.SetCount(list26, index); Span span26 = CollectionsMarshal.AsSpan(list26); num3 = 0; ref ChangeEntry reference26 = ref span26[num3]; index2 = 1; List list27 = new List(index2); CollectionsMarshal.SetCount(list27, index2); Span span27 = CollectionsMarshal.AsSpan(list27); num4 = 0; span27[num4] = "Explicitly declare support for BMR singleplayer duty (The Rematch)"; reference26 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list27); num3++; ref ChangeEntry reference27 = ref span26[num3]; num4 = 8; List list28 = new List(num4); CollectionsMarshal.SetCount(list28, num4); Span span28 = CollectionsMarshal.AsSpan(list28); index2 = 0; span28[index2] = "Fixed quest (Microbrewing) to not get stuck near ramp"; index2++; span28[index2] = "Fixed quest (The Illuminated Land) where pathing would kill the player due to fall damage"; index2++; span28[index2] = "Fixed quest (It's Probably Not Pirates) improper pathing and removed unneeded step"; index2++; span28[index2] = "Fixed quest (The Black Wolf's Ultimatum) not exiting landing area"; index2++; span28[index2] = "Fixed quest (Magiteknical Failure) from not interacting with NPC due to being mounted"; index2++; span28[index2] = "Fixed quest (We Come in Peace) shortcut navigation"; index2++; span28[index2] = "Fixed quest (Poisoned Hearts) where incorrect pathing caused the player to die"; index2++; span28[index2] = "Fixed quests (Savage Snares) and (An Apple a Day) not detecting kills"; reference27 = new ChangeEntry(EChangeCategory.Fixed, "Bug fixes", list28); reference25 = new ChangelogEntry("7.38.4", releaseDate10, list26); num2++; ref ChangelogEntry reference28 = ref span[num2]; DateOnly releaseDate11 = new DateOnly(2025, 11, 23); num3 = 3; List list29 = new List(num3); CollectionsMarshal.SetCount(list29, num3); Span span29 = CollectionsMarshal.AsSpan(list29); index = 0; ref ChangeEntry reference29 = ref span29[index]; index2 = 2; List list30 = new List(index2); CollectionsMarshal.SetCount(list30, index2); Span span30 = CollectionsMarshal.AsSpan(list30); num4 = 0; span30[num4] = "Added RequireHq to crafting InteractionType"; num4++; span30[num4] = "Mark GC quests as Locked if rank not achieved"; reference29 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list30); index++; ref ChangeEntry reference30 = ref span29[index]; num4 = 2; List list31 = new List(num4); CollectionsMarshal.SetCount(list31, num4); Span span31 = CollectionsMarshal.AsSpan(list31); index2 = 0; span31[index2] = "Added IPC for stop conditions: GetStopConditionsEnabled, SetStopConditionsEnabled, GetStopQuestList, AddStopQuest, RemoveStopQuest, ClearStopQuests, GetLevelStopCondition, SetLevelStopCondition, GetSequenceStopCondition, SetSequenceStopCondition"; index2++; span31[index2] = "Added IPC for priority quests: GetPriorityQuests, RemovePriorityQuest, ReorderPriorityQuest, GetAvailablePresets, GetPresetQuests, AddPresetToPriority, IsPresetAvailable, IsQuestInPriority, GetQuestPriorityIndex, HasAvailablePriorityQuests"; reference30 = new ChangeEntry(EChangeCategory.Added, "IPC changes", list31); index++; ref ChangeEntry reference31 = ref span29[index]; index2 = 3; List list32 = new List(index2); CollectionsMarshal.SetCount(list32, index2); Span span32 = CollectionsMarshal.AsSpan(list32); num4 = 0; span32[num4] = "Fixed line breaks not working in dialog strings"; num4++; span32[num4] = "Fixed quest (Labor of Love)"; num4++; span32[num4] = "Fixed quest (Sea of Sorrow)"; reference31 = new ChangeEntry(EChangeCategory.Fixed, "Bug fixes", list32); reference28 = new ChangelogEntry("7.38.3", releaseDate11, list29); num2++; ref ChangelogEntry reference32 = ref span[num2]; DateOnly releaseDate12 = new DateOnly(2025, 11, 18); index = 3; List list33 = new List(index); CollectionsMarshal.SetCount(list33, index); Span span33 = CollectionsMarshal.AsSpan(list33); num3 = 0; ref ChangeEntry reference33 = ref span33[num3]; num4 = 2; List list34 = new List(num4); CollectionsMarshal.SetCount(list34, num4); Span span34 = CollectionsMarshal.AsSpan(list34); index2 = 0; span34[index2] = "Auto Duty unsync options for each duty (Duty Support, Unsync Solo, Unsync Party)"; index2++; span34[index2] = "Added Auto Duty unsync options to quest schema and updated quests using old unsync method"; reference33 = new ChangeEntry(EChangeCategory.Added, "Major features", list34); num3++; ref ChangeEntry reference34 = ref span33[num3]; index2 = 3; List list35 = new List(index2); CollectionsMarshal.SetCount(list35, index2); Span span35 = CollectionsMarshal.AsSpan(list35); num4 = 0; span35[num4] = "Added IPC for duty sync handling: GetDefaultDutyMode, SetDefaultDutyMode"; num4++; span35[num4] = "Added IPC for duty mode overrides: GetDutyModeOverride, SetDutyModeOverride"; num4++; span35[num4] = "Added IPC for clearing overrides: ClearDutyModeOverride, ClearAllDutyModeOverrides"; reference34 = new ChangeEntry(EChangeCategory.Added, "IPC changes", list35); num3++; span33[num3] = new ChangeEntry(EChangeCategory.Fixed, "Fixed quest (Constant Cravings)"); reference32 = new ChangelogEntry("7.38.2", releaseDate12, list33); num2++; ref ChangelogEntry reference35 = ref span[num2]; DateOnly releaseDate13 = new DateOnly(2025, 11, 18); num3 = 3; List list36 = new List(num3); CollectionsMarshal.SetCount(list36, num3); Span span36 = CollectionsMarshal.AsSpan(list36); index = 0; ref ChangeEntry reference36 = ref span36[index]; num4 = 1; List list37 = new List(num4); CollectionsMarshal.SetCount(list37, num4); Span span37 = CollectionsMarshal.AsSpan(list37); index2 = 0; span37[index2] = "Added new fields to quest schema"; reference36 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list37); index++; ref ChangeEntry reference37 = ref span36[index]; index2 = 3; List list38 = new List(index2); CollectionsMarshal.SetCount(list38, index2); Span span38 = CollectionsMarshal.AsSpan(list38); num4 = 0; span38[num4] = "A Faerie Tale Come True"; num4++; span38[num4] = "Constant Cravings"; num4++; span38[num4] = "A Bridge Too Full"; reference37 = new ChangeEntry(EChangeCategory.QuestUpdates, "Added new quest paths", list38); index++; ref ChangeEntry reference38 = ref span36[index]; num4 = 3; List list39 = new List(num4); CollectionsMarshal.SetCount(list39, num4); Span span39 = CollectionsMarshal.AsSpan(list39); index2 = 0; span39[index2] = "Fixed various quest schemas"; index2++; span39[index2] = "Fixed changelog bullet point encoding"; index2++; span39[index2] = "Fixed item use to wait until item is used before next action"; reference38 = new ChangeEntry(EChangeCategory.Fixed, "Bug fixes", list39); reference35 = new ChangelogEntry("7.38.1", releaseDate13, list36); num2++; ref ChangelogEntry reference39 = ref span[num2]; DateOnly releaseDate14 = new DateOnly(2025, 11, 17); index = 5; List list40 = new List(index); CollectionsMarshal.SetCount(list40, index); Span span40 = CollectionsMarshal.AsSpan(list40); num3 = 0; ref ChangeEntry reference40 = ref span40[num3]; index2 = 2; List list41 = new List(index2); CollectionsMarshal.SetCount(list41, index2); Span span41 = CollectionsMarshal.AsSpan(list41); num4 = 0; span41[num4] = "Quest sequence window to show expected sequences in each quest (with quest searching)"; num4++; span41[num4] = "Changelog"; reference40 = new ChangeEntry(EChangeCategory.Added, "Major features", list41); num3++; ref ChangeEntry reference41 = ref span40[num3]; num4 = 2; List list42 = new List(num4); CollectionsMarshal.SetCount(list42, num4); Span span42 = CollectionsMarshal.AsSpan(list42); index2 = 0; span42[index2] = "Updated quest schemas"; index2++; span42[index2] = "Added search bar to preferred mounts and capitalization to mirror game mount names"; reference41 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list42); num3++; ref ChangeEntry reference42 = ref span40[num3]; index2 = 3; List list43 = new List(index2); CollectionsMarshal.SetCount(list43, index2); Span span43 = CollectionsMarshal.AsSpan(list43); num4 = 0; span43[num4] = "Renamed IsQuestCompleted → IsQuestComplete"; num4++; span43[num4] = "Renamed IsQuestAvailable → IsReadyToAcceptQuest"; num4++; span43[num4] = "Added GetCurrentTask IPC"; reference42 = new ChangeEntry(EChangeCategory.Changed, "IPC changes", list43); num3++; span40[num3] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added all Hildibrand quests"); num3++; span40[num3] = new ChangeEntry(EChangeCategory.Fixed, "Fixed credits/cutscenes playback"); reference39 = new ChangelogEntry("7.38.0", releaseDate14, list40); num2++; ref ChangelogEntry reference43 = ref span[num2]; DateOnly releaseDate15 = new DateOnly(2025, 11, 8); num3 = 1; List list44 = new List(num3); CollectionsMarshal.SetCount(list44, num3); Span span44 = CollectionsMarshal.AsSpan(list44); index = 0; span44[index] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added Fall Guys quest (Just Crowning Around)"); reference43 = new ChangelogEntry("6.38", releaseDate15, list44); num2++; ref ChangelogEntry reference44 = ref span[num2]; DateOnly releaseDate16 = new DateOnly(2025, 11, 8); index = 1; List list45 = new List(index); CollectionsMarshal.SetCount(list45, index); Span span45 = CollectionsMarshal.AsSpan(list45); num3 = 0; span45[num3] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added Cosmic Exploration and various unlock quests"); reference44 = new ChangelogEntry("6.37", releaseDate16, list45); num2++; ref ChangelogEntry reference45 = ref span[num2]; DateOnly releaseDate17 = new DateOnly(2025, 11, 2); num3 = 1; List list46 = new List(num3); CollectionsMarshal.SetCount(list46, num3); Span span46 = CollectionsMarshal.AsSpan(list46); index = 0; span46[index] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy Rank 6 quest (With High Spirits)"); reference45 = new ChangelogEntry("6.36", releaseDate17, list46); num2++; ref ChangelogEntry reference46 = ref span[num2]; DateOnly releaseDate18 = new DateOnly(2025, 10, 28); index = 1; List list47 = new List(index); CollectionsMarshal.SetCount(list47, index); Span span47 = CollectionsMarshal.AsSpan(list47); num3 = 0; span47[num3] = new ChangeEntry(EChangeCategory.Fixed, "Fixed level 3 MSQ handling if character started on non-XP buff world"); reference46 = new ChangelogEntry("6.35", releaseDate18, list47); num2++; ref ChangelogEntry reference47 = ref span[num2]; DateOnly releaseDate19 = new DateOnly(2025, 10, 23); num3 = 2; List list48 = new List(num3); CollectionsMarshal.SetCount(list48, num3); Span span48 = CollectionsMarshal.AsSpan(list48); index = 0; span48[index] = new ChangeEntry(EChangeCategory.Added, "Added clear priority quests on logout and on completion config settings"); index++; span48[index] = new ChangeEntry(EChangeCategory.Fixed, "Fixed priority quest importing to respect import order"); reference47 = new ChangelogEntry("6.34", releaseDate19, list48); num2++; ref ChangelogEntry reference48 = ref span[num2]; DateOnly releaseDate20 = new DateOnly(2025, 10, 23); index = 1; List list49 = new List(index); CollectionsMarshal.SetCount(list49, index); Span span49 = CollectionsMarshal.AsSpan(list49); num3 = 0; span49[num3] = new ChangeEntry(EChangeCategory.Fixed, "Fixed RSR combat module"); reference48 = new ChangelogEntry("6.33", releaseDate20, list49); num2++; ref ChangelogEntry reference49 = ref span[num2]; DateOnly releaseDate21 = new DateOnly(2025, 10, 23); num3 = 1; List list50 = new List(num3); CollectionsMarshal.SetCount(list50, num3); Span span50 = CollectionsMarshal.AsSpan(list50); index = 0; span50[index] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy Rank 5 quest (Forged in Corn)"); reference49 = new ChangelogEntry("6.32", releaseDate21, list50); num2++; ref ChangelogEntry reference50 = ref span[num2]; DateOnly releaseDate22 = new DateOnly(2025, 10, 21); index = 1; List list51 = new List(index); CollectionsMarshal.SetCount(list51, index); Span span51 = CollectionsMarshal.AsSpan(list51); num3 = 0; span51[num3] = new ChangeEntry(EChangeCategory.Changed, "Added checks for moogle and allied society quests when using add all available quests"); reference50 = new ChangelogEntry("6.31", releaseDate22, list51); num2++; ref ChangelogEntry reference51 = ref span[num2]; DateOnly releaseDate23 = new DateOnly(2025, 10, 21); num3 = 1; List list52 = new List(num3); CollectionsMarshal.SetCount(list52, num3); Span span52 = CollectionsMarshal.AsSpan(list52); index = 0; span52[index] = new ChangeEntry(EChangeCategory.Added, "Added button to journal that allows adding all available quests to priority"); reference51 = new ChangelogEntry("6.30", releaseDate23, list52); num2++; ref ChangelogEntry reference52 = ref span[num2]; DateOnly releaseDate24 = new DateOnly(2025, 10, 20); index = 2; List list53 = new List(index); CollectionsMarshal.SetCount(list53, index); Span span53 = CollectionsMarshal.AsSpan(list53); num3 = 0; ref ChangeEntry reference53 = ref span53[num3]; num4 = 2; List list54 = new List(num4); CollectionsMarshal.SetCount(list54, num4); Span span54 = CollectionsMarshal.AsSpan(list54); index2 = 0; span54[index2] = "Added item count to combat handling rework"; index2++; span54[index2] = "Updated Pandora conflicting features"; reference53 = new ChangeEntry(EChangeCategory.Changed, "Combat handling improvements", list54); num3++; span53[num3] = new ChangeEntry(EChangeCategory.Fixed, "Fixed quest to purchase Gysahl Greens if not in inventory"); reference52 = new ChangelogEntry("6.29", releaseDate24, list53); num2++; ref ChangelogEntry reference54 = ref span[num2]; DateOnly releaseDate25 = new DateOnly(2025, 10, 19); num3 = 1; List list55 = new List(num3); CollectionsMarshal.SetCount(list55, num3); Span span55 = CollectionsMarshal.AsSpan(list55); index = 0; span55[index] = new ChangeEntry(EChangeCategory.Changed, "Reworked kill count combat handling - combat and enemy kills are now processed instantly"); reference54 = new ChangelogEntry("6.28", releaseDate25, list55); num2++; ref ChangelogEntry reference55 = ref span[num2]; DateOnly releaseDate26 = new DateOnly(2025, 10, 18); index = 2; List list56 = new List(index); CollectionsMarshal.SetCount(list56, index); Span span56 = CollectionsMarshal.AsSpan(list56); num3 = 0; span56[num3] = new ChangeEntry(EChangeCategory.Changed, "Improved Aether Current checking logic"); num3++; span56[num3] = new ChangeEntry(EChangeCategory.Fixed, "Fixed Chocobo Taxi Stand CheckSkip error and Patch 7.3 Fantasia unlock quest date/time"); reference55 = new ChangelogEntry("6.27", releaseDate26, list56); num2++; ref ChangelogEntry reference56 = ref span[num2]; DateOnly releaseDate27 = new DateOnly(2025, 10, 18); num3 = 1; List list57 = new List(num3); CollectionsMarshal.SetCount(list57, num3); Span span57 = CollectionsMarshal.AsSpan(list57); index = 0; span57[index] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy rank 4 quests"); reference56 = new ChangelogEntry("6.26", releaseDate27, list57); num2++; ref ChangelogEntry reference57 = ref span[num2]; DateOnly releaseDate28 = new DateOnly(2025, 10, 17); index = 1; List list58 = new List(index); CollectionsMarshal.SetCount(list58, index); Span span58 = CollectionsMarshal.AsSpan(list58); num3 = 0; span58[num3] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added All Saints' Wake 2025 quests and 7.35 Yok Huy rank 4 quests"); reference57 = new ChangelogEntry("6.25", releaseDate28, list58); num2++; ref ChangelogEntry reference58 = ref span[num2]; DateOnly releaseDate29 = new DateOnly(2025, 10, 16); num3 = 1; List list59 = new List(num3); CollectionsMarshal.SetCount(list59, num3); Span span59 = CollectionsMarshal.AsSpan(list59); index = 0; span59[index] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy rank 4 quests and Deep Dungeon quest"); reference58 = new ChangelogEntry("6.24", releaseDate29, list59); num2++; ref ChangelogEntry reference59 = ref span[num2]; DateOnly releaseDate30 = new DateOnly(2025, 10, 13); index = 1; List list60 = new List(index); CollectionsMarshal.SetCount(list60, index); Span span60 = CollectionsMarshal.AsSpan(list60); num3 = 0; span60[num3] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy rank 3 quest (Larder Logistics)"); reference59 = new ChangelogEntry("6.23", releaseDate30, list60); num2++; ref ChangelogEntry reference60 = ref span[num2]; DateOnly releaseDate31 = new DateOnly(2025, 10, 12); num3 = 3; List list61 = new List(num3); CollectionsMarshal.SetCount(list61, num3); Span span61 = CollectionsMarshal.AsSpan(list61); index = 0; span61[index] = new ChangeEntry(EChangeCategory.Changed, "Prevent disabled or Locked quests from being started as 'Start as next quest'"); index++; span61[index] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy rank 3 quests"); index++; span61[index] = new ChangeEntry(EChangeCategory.Fixed, "Fixed Yok Huy quest and journal quest chain priority issues"); reference60 = new ChangelogEntry("6.22", releaseDate31, list61); num2++; ref ChangelogEntry reference61 = ref span[num2]; DateOnly releaseDate32 = new DateOnly(2025, 10, 12); index = 2; List list62 = new List(index); CollectionsMarshal.SetCount(list62, index); Span span62 = CollectionsMarshal.AsSpan(list62); num3 = 0; span62[num3] = new ChangeEntry(EChangeCategory.Added, "Added expansion abbreviation to journal window"); num3++; span62[num3] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy rank 3 quests"); reference61 = new ChangelogEntry("6.21", releaseDate32, list62); num2++; ref ChangelogEntry reference62 = ref span[num2]; DateOnly releaseDate33 = new DateOnly(2025, 10, 10); num3 = 2; List list63 = new List(num3); CollectionsMarshal.SetCount(list63, num3); Span span63 = CollectionsMarshal.AsSpan(list63); index = 0; span63[index] = new ChangeEntry(EChangeCategory.Changed, "Allow completed repeatable quests to be used with 'Add quest and requirements to priority' feature"); index++; span63[index] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy rank 1 quest (A Work of Cart)"); reference62 = new ChangelogEntry("6.20", releaseDate33, list63); num2++; ref ChangelogEntry reference63 = ref span[num2]; DateOnly releaseDate34 = new DateOnly(2025, 10, 9); index = 3; List list64 = new List(index); CollectionsMarshal.SetCount(list64, index); Span span64 = CollectionsMarshal.AsSpan(list64); num3 = 0; span64[num3] = new ChangeEntry(EChangeCategory.Added, "Added config to batch Allied Society quest turn-ins"); num3++; span64[num3] = new ChangeEntry(EChangeCategory.Changed, "Repeatable quests now show correct availability state in journal"); num3++; span64[num3] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy rank 2 quests"); reference63 = new ChangelogEntry("6.19", releaseDate34, list64); num2++; ref ChangelogEntry reference64 = ref span[num2]; DateOnly releaseDate35 = new DateOnly(2025, 10, 9); num3 = 2; List list65 = new List(num3); CollectionsMarshal.SetCount(list65, num3); Span span65 = CollectionsMarshal.AsSpan(list65); index = 0; span65[index] = new ChangeEntry(EChangeCategory.Changed, "Show once completed quests with improved state display"); index++; span65[index] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy daily quest and improvements to various Yok Huy quests"); reference64 = new ChangelogEntry("6.18", releaseDate35, list65); num2++; ref ChangelogEntry reference65 = ref span[num2]; DateOnly releaseDate36 = new DateOnly(2025, 10, 8); index = 1; List list66 = new List(index); CollectionsMarshal.SetCount(list66, index); Span span66 = CollectionsMarshal.AsSpan(list66); num3 = 0; span66[num3] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy rank 1 and rank 2 quests"); reference65 = new ChangelogEntry("6.17", releaseDate36, list66); num2++; ref ChangelogEntry reference66 = ref span[num2]; DateOnly releaseDate37 = new DateOnly(2025, 10, 8); num3 = 1; List list67 = new List(num3); CollectionsMarshal.SetCount(list67, num3); Span span67 = CollectionsMarshal.AsSpan(list67); index = 0; span67[index] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Deep Dungeon quest (Faerie Tale)"); reference66 = new ChangelogEntry("6.16", releaseDate37, list67); num2++; ref ChangelogEntry reference67 = ref span[num2]; DateOnly releaseDate38 = new DateOnly(2025, 10, 8); index = 2; List list68 = new List(index); CollectionsMarshal.SetCount(list68, index); Span span68 = CollectionsMarshal.AsSpan(list68); num3 = 0; span68[num3] = new ChangeEntry(EChangeCategory.Changed, "Dalamud cleanup"); num3++; span68[num3] = new ChangeEntry(EChangeCategory.Fixed, "Fixed quest level requirement check log spam"); reference67 = new ChangelogEntry("6.15", releaseDate38, list68); num2++; ref ChangelogEntry reference68 = ref span[num2]; DateOnly releaseDate39 = new DateOnly(2025, 10, 8); num3 = 1; List list69 = new List(num3); CollectionsMarshal.SetCount(list69, num3); Span span69 = CollectionsMarshal.AsSpan(list69); index = 0; span69[index] = new ChangeEntry(EChangeCategory.Fixed, "Fixed abandoned quest check logic if quest were MSQ"); reference68 = new ChangelogEntry("6.14", releaseDate39, list69); num2++; ref ChangelogEntry reference69 = ref span[num2]; DateOnly releaseDate40 = new DateOnly(2025, 10, 8); index = 2; List list70 = new List(index); CollectionsMarshal.SetCount(list70, index); Span span70 = CollectionsMarshal.AsSpan(list70); num3 = 0; ref ChangeEntry reference70 = ref span70[num3]; index2 = 3; List list71 = new List(index2); CollectionsMarshal.SetCount(list71, index2); Span span71 = CollectionsMarshal.AsSpan(list71); num4 = 0; span71[num4] = "Context menu option to add required quests and their chain to priority list"; num4++; span71[num4] = "AetheryteShortcut to multiple quests"; num4++; span71[num4] = "Artisan as a recommended plugin/dependency"; reference70 = new ChangeEntry(EChangeCategory.Added, "Quest improvements", list71); num3++; span70[num3] = new ChangeEntry(EChangeCategory.Fixed, "Fixed abandoned quest check and priority list issues"); reference69 = new ChangelogEntry("6.13", releaseDate40, list70); num2++; ref ChangelogEntry reference71 = ref span[num2]; DateOnly releaseDate41 = new DateOnly(2025, 10, 7); num3 = 4; List list72 = new List(num3); CollectionsMarshal.SetCount(list72, num3); Span span72 = CollectionsMarshal.AsSpan(list72); index = 0; ref ChangeEntry reference72 = ref span72[index]; num4 = 4; List list73 = new List(num4); CollectionsMarshal.SetCount(list73, num4); Span span73 = CollectionsMarshal.AsSpan(list73); index2 = 0; span73[index2] = "FATE combat handling with auto level syncing"; index2++; span73[index2] = "Start accepted quests from journal with 'Start as next quest'"; index2++; span73[index2] = "Update quest tracking when quests are hidden or prioritised in game"; index2++; span73[index2] = "QuestMap as a recommended plugin/dependency"; reference72 = new ChangeEntry(EChangeCategory.Added, "FATE and quest tracking", list73); index++; ref ChangeEntry reference73 = ref span72[index]; index2 = 3; List list74 = new List(index2); CollectionsMarshal.SetCount(list74, index2); Span span74 = CollectionsMarshal.AsSpan(list74); num4 = 0; span74[num4] = "Always prioritise next quest during teleportation/zone transitions"; num4++; span74[num4] = "Improved accepted quest logic with abandoned quest detection"; num4++; span74[num4] = "Show quests without quest paths as Locked"; reference73 = new ChangeEntry(EChangeCategory.Changed, "Quest prioritisation improvements", list74); index++; span72[index] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Deep Dungeon, Hildibrand, Yok Huy, Monster Hunter Wilds Collab, and Doman Enclave quests"); index++; span72[index] = new ChangeEntry(EChangeCategory.Fixed, "Fixed accepted/active quest display and Hildibrand quest issues"); reference71 = new ChangelogEntry("6.12", releaseDate41, list72); num2++; ref ChangelogEntry reference74 = ref span[num2]; DateOnly releaseDate42 = new DateOnly(2025, 10, 3); index = 1; List list75 = new List(index); CollectionsMarshal.SetCount(list75, index); Span span75 = CollectionsMarshal.AsSpan(list75); num3 = 0; span75[num3] = new ChangeEntry(EChangeCategory.Changed, "Added remaining checks for quest priority to prevent infinite teleport looping"); reference74 = new ChangelogEntry("6.11", releaseDate42, list75); num2++; ref ChangelogEntry reference75 = ref span[num2]; DateOnly releaseDate43 = new DateOnly(2025, 10, 2); num3 = 1; List list76 = new List(num3); CollectionsMarshal.SetCount(list76, num3); Span span76 = CollectionsMarshal.AsSpan(list76); index = 0; ref ChangeEntry reference76 = ref span76[index]; num4 = 2; List list77 = new List(num4); CollectionsMarshal.SetCount(list77, num4); Span span77 = CollectionsMarshal.AsSpan(list77); index2 = 0; span77[index2] = "Don't show quests as available if player doesn't meet level requirements"; index2++; span77[index2] = "Updated 'required for MSQ' text in Crystal Tower quest preset window"; reference76 = new ChangeEntry(EChangeCategory.Changed, "Quest window improvements", list77); reference75 = new ChangelogEntry("6.10", releaseDate43, list76); num2++; ref ChangelogEntry reference77 = ref span[num2]; DateOnly releaseDate44 = new DateOnly(2025, 9, 21); index = 5; List list78 = new List(index); CollectionsMarshal.SetCount(list78, index); Span span78 = CollectionsMarshal.AsSpan(list78); num3 = 0; ref ChangeEntry reference78 = ref span78[num3]; index2 = 4; List list79 = new List(index2); CollectionsMarshal.SetCount(list79, index2); Span span79 = CollectionsMarshal.AsSpan(list79); num4 = 0; span79[num4] = "Reworked event quest handling - automatically displays when events are active"; num4++; span79[num4] = "Reworked journal system with improved filtering and display"; num4++; span79[num4] = "Reworked Priority Quests tab (Manual Priority and Quest Presets)"; num4++; span79[num4] = "Quest path viewer site (https://wigglymuffin.github.io/FFXIV-Tools/)"; reference78 = new ChangeEntry(EChangeCategory.Added, "Major system reworks", list79); num3++; ref ChangeEntry reference79 = ref span78[num3]; num4 = 4; List list80 = new List(num4); CollectionsMarshal.SetCount(list80, num4); Span span80 = CollectionsMarshal.AsSpan(list80); index2 = 0; span80[index2] = "Questionable.IsQuestCompleted"; index2++; span80[index2] = "Questionable.IsQuestAvailable"; index2++; span80[index2] = "Questionable.IsQuestAccepted"; index2++; span80[index2] = "Questionable.IsQuestUnobtainable"; reference79 = new ChangeEntry(EChangeCategory.Added, "New IPC commands", list80); num3++; ref ChangeEntry reference80 = ref span78[num3]; index2 = 5; List list81 = new List(index2); CollectionsMarshal.SetCount(list81, index2); Span span81 = CollectionsMarshal.AsSpan(list81); num4 = 0; span81[num4] = "Improved JSON quest validation with specific error reasons"; num4++; span81[num4] = "Added stop at sequence stop condition"; num4++; span81[num4] = "Improved Pandora plugin conflict detection"; num4++; span81[num4] = "Improved DialogueChoices regex matching"; num4++; span81[num4] = "Improved refresh checker for all quest states"; reference80 = new ChangeEntry(EChangeCategory.Changed, "Various improvements", list81); num3++; span78[num3] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.31 Occult Crescent quests"); num3++; span78[num3] = new ChangeEntry(EChangeCategory.Fixed, "Fixed cutscene crashes, Single Player Duty triggers, and various quest issues"); reference77 = new ChangelogEntry("6.9", releaseDate44, list78); num2++; ref ChangelogEntry reference81 = ref span[num2]; DateOnly releaseDate45 = new DateOnly(2025, 9, 2); num3 = 4; List list82 = new List(num3); CollectionsMarshal.SetCount(list82, num3); Span span82 = CollectionsMarshal.AsSpan(list82); index = 0; ref ChangeEntry reference82 = ref span82[index]; num4 = 4; List list83 = new List(num4); CollectionsMarshal.SetCount(list83, num4); Span span83 = CollectionsMarshal.AsSpan(list83); index2 = 0; span83[index2] = "Help commands and priority quest command"; index2++; span83[index2] = "Prevent 'CompleteQuest' step setting"; index2++; span83[index2] = "Duty counts and controls in 'Quest Battles' tab"; index2++; span83[index2] = "'Refresh quest timer' setting (WIP)"; reference82 = new ChangeEntry(EChangeCategory.Added, "Command and UI improvements", list83); index++; span82[index] = new ChangeEntry(EChangeCategory.Changed, "Improved 'Clear All' buttons to require CTRL being held"); index++; span82[index] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added Zodiac quests and 7.31 Cosmic/Occult Crescent quests"); index++; span82[index] = new ChangeEntry(EChangeCategory.Fixed, "Fixed Fishing for Friendship and Cosmic Exploration quests"); reference81 = new ChangelogEntry("6.8", releaseDate45, list82); num2++; ref ChangelogEntry reference83 = ref span[num2]; DateOnly releaseDate46 = new DateOnly(2025, 8, 27); index = 4; List list84 = new List(index); CollectionsMarshal.SetCount(list84, index); Span span84 = CollectionsMarshal.AsSpan(list84); num3 = 0; ref ChangeEntry reference84 = ref span84[num3]; index2 = 2; List list85 = new List(index2); CollectionsMarshal.SetCount(list85, index2); Span span85 = CollectionsMarshal.AsSpan(list85); num4 = 0; span85[num4] = "Icon to 'Clear All' button in stop conditions"; num4++; span85[num4] = "Duty counts and 'Enable All' button in 'Duties' tab"; reference84 = new ChangeEntry(EChangeCategory.Added, "UI improvements", list85); num3++; span84[num3] = new ChangeEntry(EChangeCategory.Changed, "Renamed 'Clear' button to 'Clear All' in priority window"); num3++; span84[num3] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added Rising 2025 Event Quests"); num3++; span84[num3] = new ChangeEntry(EChangeCategory.Fixed, "Fixed clipboard assigning blacklist to whitelist in 'Duties' tab"); reference83 = new ChangelogEntry("6.7", releaseDate46, list84); num2++; ref ChangelogEntry reference85 = ref span[num2]; DateOnly releaseDate47 = new DateOnly(2025, 8, 25); num3 = 2; List list86 = new List(num3); CollectionsMarshal.SetCount(list86, num3); Span span86 = CollectionsMarshal.AsSpan(list86); index = 0; ref ChangeEntry reference86 = ref span86[index]; num4 = 2; List list87 = new List(num4); CollectionsMarshal.SetCount(list87, num4); Span span87 = CollectionsMarshal.AsSpan(list87); index2 = 0; span87[index2] = "Missing emotes to schema and emote handler"; index2++; span87[index2] = "Improved stop conditions with 'Clear All' button"; reference86 = new ChangeEntry(EChangeCategory.Added, "Emote support and stop conditions", list87); index++; span86[index] = new ChangeEntry(EChangeCategory.Changed, "Stop at level functionality"); reference85 = new ChangelogEntry("6.6", releaseDate47, list86); num2++; ref ChangelogEntry reference87 = ref span[num2]; DateOnly releaseDate48 = new DateOnly(2025, 8, 25); index = 2; List list88 = new List(index); CollectionsMarshal.SetCount(list88, index); Span span88 = CollectionsMarshal.AsSpan(list88); num3 = 0; span88[num3] = new ChangeEntry(EChangeCategory.Fixed, "Potential fix to single/solo duties softlocking"); num3++; span88[num3] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added San d'Oria: The Second Walk and various side quests"); reference87 = new ChangelogEntry("6.5", releaseDate48, list88); Changelogs = list; } }