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 = 78; List list = new List(num); CollectionsMarshal.SetCount(list, num); Span span = CollectionsMarshal.AsSpan(list); ref ChangelogEntry reference = ref span[0]; DateOnly releaseDate = new DateOnly(2026, 8, 21); int num2 = 4; List list2 = new List(num2); CollectionsMarshal.SetCount(list2, num2); Span span2 = CollectionsMarshal.AsSpan(list2); ref ChangeEntry reference2 = ref span2[0]; int num3 = 4; List list3 = new List(num3); CollectionsMarshal.SetCount(list3, num3); Span span3 = CollectionsMarshal.AsSpan(list3); span3[0] = "Added target state and control-flag details to the debug overlay and Quest Editor previews."; span3[1] = "Added a setting under \"Quest Battles\" to control BossMod AI usage during battles."; span3[2] = "Added Travel Mode and Arrival Mode controls for quest routes, including on-foot, ground-mount, flying, landing, and dismount preferences."; span3[3] = "Added SmartNav support for swimming, diving, and surfacing while routing through water."; reference2 = new ChangeEntry(EChangeCategory.Added, "Additions", list3); ref ChangeEntry reference3 = ref span2[1]; num3 = 4; List list4 = new List(num3); CollectionsMarshal.SetCount(list4, num3); Span span4 = CollectionsMarshal.AsSpan(list4); span4[0] = "Do not start duty until player exits the \"Occupied\" state."; span4[1] = "Force starting city quests to execute in specific order."; span4[2] = "Warp-triggering interactions now confirm prompts and wait for same-territory transitions."; span4[3] = "Recommended-gear steps now wait for the requested equipment changes and stop automation if equipping fails."; reference3 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list4); ref ChangeEntry reference4 = ref span2[2]; num3 = 2; List list5 = new List(num3); CollectionsMarshal.SetCount(list5, num3); Span span5 = CollectionsMarshal.AsSpan(list5); span5[0] = "Fixed landing & interaction range movement logic."; span5[1] = "Fixed combat state dropping prematurely when item usage was interrupted by player rotation."; reference4 = new ChangeEntry(EChangeCategory.Fixed, "Resolved", list5); ref ChangeEntry reference5 = ref span2[3]; num3 = 7; List list6 = new List(num3); CollectionsMarshal.SetCount(list6, num3); Span span6 = CollectionsMarshal.AsSpan(list6); span6[0] = "In \"Hatchling Humiliation\", force dismount before Combat step."; span6[1] = "Consolidate \"Elite Beating\" Combat events into a single step."; span6[2] = "Force dismount & walking to Aether Current position for \"Waiting for the Wind to Change\"."; span6[3] = "Add \"Jump\" step for \"Waiting for the Wind to Change\"."; span6[4] = "Disable navmesh for territory boundary for \"A Great New Nation\"."; span6[5] = "Fix various navigation issues with SmartNav for the Syrcus Tower questline."; span6[6] = "Split the Glowing Chimera into a second combat wave for \"Chimerical Maintenance\" so combat automation remains active."; reference5 = new ChangeEntry(EChangeCategory.QuestUpdates, "Quest Path Updates", list6); reference = new ChangelogEntry("7.5.13", releaseDate, list2); ref ChangelogEntry reference6 = ref span[1]; DateOnly releaseDate2 = new DateOnly(2026, 8, 17); num2 = 5; List list7 = new List(num2); CollectionsMarshal.SetCount(list7, num2); Span span7 = CollectionsMarshal.AsSpan(list7); ref ChangeEntry reference7 = ref span7[0]; num3 = 5; List list8 = new List(num3); CollectionsMarshal.SetCount(list8, num3); Span span8 = CollectionsMarshal.AsSpan(list8); span8[0] = "Added a fixed-height, scrollable list to Queue -> Saved Presets."; span8[1] = "Added an always-on selected-step world preview to the debug Quest Editor, including targetability and required quest variables."; span8[2] = "Added step duplication to the debug Quest Editor."; span8[3] = "Added an option to abandon the active quest from the main Questionable window."; span8[4] = "Added automatic continuation after manually completed duties."; reference7 = new ChangeEntry(EChangeCategory.Added, "Additions", list8); ref ChangeEntry reference8 = ref span7[1]; num3 = 5; List list9 = new List(num3); CollectionsMarshal.SetCount(list9, num3); Span span9 = CollectionsMarshal.AsSpan(list9); span9[0] = "LGB-derived data (NPC positions and zone boundaries) now ships with the plugin."; span9[1] = "Automatically use reward items after quest complete as well as on quest accept."; span9[2] = "Added copy and paste for stop conditions and blacklisted quests, and restored drag reordering for stop conditions."; span9[3] = "Prioritized starting city-state quests needed to unlock the full city over class and job quests."; span9[4] = "Improved Rotation Solver Reborn target handling to avoid unnecessary target changes."; reference8 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list9); ref ChangeEntry reference9 = ref span7[2]; num3 = 16; List list10 = new List(num3); CollectionsMarshal.SetCount(list10, num3); Span span10 = CollectionsMarshal.AsSpan(list10); span10[0] = "Fixed timeout state being triggered if character status is 'Occupied'."; span10[1] = "Prevented DoGather exceptions when gathering slots are empty or the requested collectable is unavailable."; span10[2] = "Fixed Custom Deliveries selecting or attempting to turn in an item that is no longer requested."; span10[3] = "Fixed Custom Delivery travel into the Firmament getting stuck at the gatekeeper."; span10[4] = "Fixed Custom Delivery navigation not recovering when pathfinding to the delivery NPC fails after gathering."; span10[5] = "Fixed Smart Gear Upgrades unequipping gear when the current gearset contains stale or mismatched data."; span10[6] = "Fixed Questionable selecting quests that were hidden in the in-game Journal."; span10[7] = "Fixed 'Don't pick up class/job quests' preventing Questionable from continuing with an available MSQ."; span10[8] = "Fixed required quest-variable baselines being lost on data reload or carried into a later quest sequence."; span10[9] = "Fixed quest and event items appearing as unknown items in the debug Quest Editor."; span10[10] = "Fixed rejected AutoDuty runs hanging instead of failing promptly."; span10[11] = "Fixed aethernet travel failing when the local player was temporarily unavailable at startup."; span10[12] = "Fixed Custom Deliveries unnecessarily repositioning near delivery NPCs or failing to unmount on direct approaches."; span10[13] = "Fixed ignored quests being selected from the priority queue."; span10[14] = "Fixed questing not resuming correctly after duties, including premature sequence transitions and Field Operations being treated as duties."; span10[15] = "Fixed Fishing navigation around unlandable fishing markers and the initial cast after AutoHook setup."; reference9 = new ChangeEntry(EChangeCategory.Fixed, "Resolved", list10); ref ChangeEntry reference10 = ref span7[3]; num3 = 2; List list11 = new List(num3); CollectionsMarshal.SetCount(list11, num3); Span span11 = CollectionsMarshal.AsSpan(list11); span11[0] = "Removed the background LGB scan and its out-of-process worker - there is no first-load disk or memory spike after a game patch anymore."; span11[1] = "Removed the \"Clear LGB Caches\" button, as there are no LGB caches left to clear."; reference10 = new ChangeEntry(EChangeCategory.Removed, "Retired", list11); ref ChangeEntry reference11 = ref span7[4]; num3 = 3; List list12 = new List(num3); CollectionsMarshal.SetCount(list12, num3); Span span12 = CollectionsMarshal.AsSpan(list12); span12[0] = "Updated Moonfire Faire (2026) quest 'Earning Your Water Wings' to pick up the subsequent event quest, 'Whoever Floats Your Raft'."; span12[1] = "Added the Phantom Village aethernet destination and the final relic quest, 'All Too Fleeting'."; span12[2] = "Added paths for the Amalj'aa daily quests 'Smothering Instinct' and 'Ravage the Ravagers'."; reference11 = new ChangeEntry(EChangeCategory.QuestUpdates, "Quest Path Updates", list12); reference6 = new ChangelogEntry("7.5.12", releaseDate2, list7); ref ChangelogEntry reference12 = ref span[2]; DateOnly releaseDate3 = new DateOnly(2026, 8, 13); num2 = 3; List list13 = new List(num2); CollectionsMarshal.SetCount(list13, num2); Span span13 = CollectionsMarshal.AsSpan(list13); ref ChangeEntry reference13 = ref span13[0]; num3 = 1; List list14 = new List(num3); CollectionsMarshal.SetCount(list14, num3); CollectionsMarshal.AsSpan(list14)[0] = "Added autodetection of your Grand Company based on player's starting city."; reference13 = new ChangeEntry(EChangeCategory.Added, "Added", list14); ref ChangeEntry reference14 = ref span13[1]; num3 = 1; List list15 = new List(num3); CollectionsMarshal.SetCount(list15, num3); CollectionsMarshal.AsSpan(list15)[0] = "Updated Moonfire Faire (2026) event paths to go around the pool."; reference14 = new ChangeEntry(EChangeCategory.Changed, "Changed", list15); ref ChangeEntry reference15 = ref span13[2]; num3 = 3; List list16 = new List(num3); CollectionsMarshal.SetCount(list16, num3); Span span14 = CollectionsMarshal.AsSpan(list16); span14[0] = "Fix an issue where Custom Deliveries were not working due to Questionable attempting to use old quest presets."; span14[1] = "Fix race condition where Questionable is attempting to call Bossmod IPC before Bossmod had finished loading."; span14[2] = "Fix Bossmod AI not working due to Questionable intializing an empty preset."; reference15 = new ChangeEntry(EChangeCategory.Fixed, "Fixed", list16); reference12 = new ChangelogEntry("7.5.11", releaseDate3, list13); ref ChangelogEntry reference16 = ref span[3]; DateOnly releaseDate4 = new DateOnly(2026, 8, 12); num2 = 1; List list17 = new List(num2); CollectionsMarshal.SetCount(list17, num2); ref ChangeEntry reference17 = ref CollectionsMarshal.AsSpan(list17)[0]; num3 = 1; List list18 = new List(num3); CollectionsMarshal.SetCount(list18, num3); CollectionsMarshal.AsSpan(list18)[0] = "This version was intended to roll back early changes made to 7.5.9 before it was ready for publishing."; reference17 = new ChangeEntry(EChangeCategory.Removed, "Rollback", list18); reference16 = new ChangelogEntry("7.5.10", releaseDate4, list17); ref ChangelogEntry reference18 = ref span[4]; DateOnly releaseDate5 = new DateOnly(2026, 8, 12); num2 = 1; List list19 = new List(num2); CollectionsMarshal.SetCount(list19, num2); ref ChangeEntry reference19 = ref CollectionsMarshal.AsSpan(list19)[0]; num3 = 1; List list20 = new List(num3); CollectionsMarshal.SetCount(list20, num3); CollectionsMarshal.AsSpan(list20)[0] = "Fixed an issue which causes the plugin to fail to load and Dalamud to crash in rare occasions."; reference19 = new ChangeEntry(EChangeCategory.Fixed, "Fixed", list20); reference18 = new ChangelogEntry("7.5.9", releaseDate5, list19); ref ChangelogEntry reference20 = ref span[5]; DateOnly releaseDate6 = new DateOnly(2026, 8, 12); num2 = 1; List list21 = new List(num2); CollectionsMarshal.SetCount(list21, num2); ref ChangeEntry reference21 = ref CollectionsMarshal.AsSpan(list21)[0]; num3 = 1; List list22 = new List(num3); CollectionsMarshal.SetCount(list22, num3); CollectionsMarshal.AsSpan(list22)[0] = "This version was intended to roll back early changes made to 7.5.9 before it was ready for publishing."; reference21 = new ChangeEntry(EChangeCategory.Removed, "Rollback", list22); reference20 = new ChangelogEntry("7.5.8", releaseDate6, list21); ref ChangelogEntry reference22 = ref span[6]; DateOnly releaseDate7 = new DateOnly(2026, 8, 12); num2 = 1; List list23 = new List(num2); CollectionsMarshal.SetCount(list23, num2); ref ChangeEntry reference23 = ref CollectionsMarshal.AsSpan(list23)[0]; num3 = 2; List list24 = new List(num3); CollectionsMarshal.SetCount(list24, num3); Span span15 = CollectionsMarshal.AsSpan(list24); span15[0] = "Move LGB scanning (NPC positions and zone boundaries) to an out-of-process worker to eliminate memory spikes on first load and after game patches"; span15[1] = "Add Clear LGB Caches button in Advanced settings with cache size tooltip"; reference23 = new ChangeEntry(EChangeCategory.Changed, "Changed", list24); reference22 = new ChangelogEntry("7.5.7", releaseDate7, list23); ref ChangelogEntry reference24 = ref span[7]; DateOnly releaseDate8 = new DateOnly(2026, 8, 12); num2 = 4; List list25 = new List(num2); CollectionsMarshal.SetCount(list25, num2); Span span16 = CollectionsMarshal.AsSpan(list25); ref ChangeEntry reference25 = ref span16[0]; num3 = 35; List list26 = new List(num3); CollectionsMarshal.SetCount(list26, num3); Span span17 = CollectionsMarshal.AsSpan(list26); span17[0] = "Add SmartNav automatic cross-zone routing with real-time gil cost awareness"; span17[1] = "Add WigglyNav as an alternative navigation provider with provider-aware navmesh rebuild"; span17[2] = "Add Custom Delivery automation with crafting, gathering, fishing, vendor purchases, and job selection"; span17[3] = "Add Attunement tab to Journal with aetheryte/aethernet/aether current status and batch attune"; span17[4] = "Add Fishing automation with AutoHook preset management and bait vendor resolution"; span17[5] = "Add allied society overcap protection with reputation-aware turn-in ordering"; span17[6] = "Add quest chain graph with queue management in Journal"; span17[7] = "Add Gathering Editor as a sub-panel to Quest Editor Window"; span17[8] = "Add smart equip with three modes: Game Default, Smart (stat-aware), and None"; span17[9] = "Add gear coffer opening from quest rewards with gearset switching"; span17[10] = "Add automatic repair at quest boundaries and duty gates via self-repair and menders"; span17[11] = "Add out-of-game notifications with per-event alert toggles and sound selection"; span17[12] = "Add run-command-after-stop for executing a command when a stop condition fires"; span17[13] = "Add reward redemption settings with per-type filtering and skip-tradable option"; span17[14] = "Add UnlockLink reward type for unlock-link quest rewards"; span17[15] = "Add teleport ticket support for cheaper cross-zone travel"; span17[16] = "Add chocobo taxi routing for zones with taxi stands"; span17[17] = "Add warp-based travel (elevators, ferries, zone transitions)"; span17[18] = "Add Critical Encounter and Fishing quest step types"; span17[19] = "Add auto-unsync for 4-man dungeons when safely overleveled"; span17[20] = "Add death recovery system that auto-respawns and re-routes"; span17[21] = "Add RetryStep system that re-navigates on interaction failures"; span17[22] = "Add UnequipItem step executor"; span17[23] = "Add unified stop condition system with QuestCount, Level, and Sequence conditions"; span17[24] = "Add setup wizard with guided steps, re-openable via command"; span17[25] = "Add BossModReborn support alongside BossMod"; span17[26] = "Add WrathCombo integration with explicit combo state management"; span17[27] = "Add per-feature control for external plugin pausing"; span17[28] = "Add hot-reloading and in-memory quest testing to Quest Editor"; span17[29] = "Add Navigation config tab with mount, flying, and gil reserve settings"; span17[30] = "Add config backup before version migrations"; span17[31] = "Add option to disable coffer opening (None mode)"; span17[32] = "Add detection of installed-but-disabled plugins with Enable button"; span17[33] = "Add plugin alternative listing (vnavmesh-cn, BossModReborn) with conflict warnings"; span17[34] = "Add accepted quests with no path shown with live game sequence"; reference25 = new ChangeEntry(EChangeCategory.Added, "Added", list26); ref ChangeEntry reference26 = ref span16[1]; num3 = 17; List list27 = new List(num3); CollectionsMarshal.SetCount(list27, num3); Span span18 = CollectionsMarshal.AsSpan(list27); span18[0] = "Redesign Configuration window with grouped sidebar navigation and themed cards"; span18[1] = "Redesign Journal with sidebar navigation, accordion layouts, and tracker tables"; span18[2] = "Redesign main quest window with themed banners, titles, and stop buttons"; span18[3] = "Redesign FATE and Seasonal Duty selection windows with search and shared cycle UI"; span18[4] = "Replace quest-path-based custom deliveries with dynamic automation controller"; span18[5] = "Move path data to external repository for community contributions"; span18[6] = "Install and enable required plugins directly from the Dependencies tab"; span18[7] = "Faster startup with parallel data loading"; span18[8] = "SmartNav automatically determines mount, fly, and teleport decisions (replaces manual shortcuts)"; span18[9] = "Replace native aethernet teleportation with direct implementation (removes Lifestream dependency)"; span18[10] = "Remove aether current and city aethernet quest presets (replaced by Attunement tab)"; span18[11] = "Remove 'Stop after current quest' and quest-count/timer stop buttons from main window"; span18[12] = "Remove 'View All Quest Paths Online' button from journal"; span18[13] = "Remove Explanation dropdown from Quests and Duties tabs"; span18[14] = "Virtualize quest, duty, and gathering journals for better performance"; span18[15] = "Default custom delivery scrip overcap mode to Ignore"; span18[16] = "Default quest journal groups to collapsed"; reference26 = new ChangeEntry(EChangeCategory.Changed, "Changed", list27); ref ChangeEntry reference27 = ref span16[2]; num3 = 41; List list28 = new List(num3); CollectionsMarshal.SetCount(list28, num3); Span span19 = CollectionsMarshal.AsSpan(list28); span19[0] = "Fix zone transition hangs and re-routing after zone changes"; span19[1] = "Fix flying route decisions based on mount ownership and flying unlock state"; span19[2] = "Fix warp routing filtering by quest requirements and class level"; span19[3] = "Fix zone boundary access respecting per-boundary quest requirements"; span19[4] = "Fix custom delivery craft purchases, turn-in timeouts, and rank-up resume"; span19[5] = "Fix custom delivery keeping queued deliveries when inventory is full"; span19[6] = "Fix fishing approach rebuild on retry and no-progress timeout"; span19[7] = "Fix smart equip ranking weapons by weapon damage and job-usable stats"; span19[8] = "Fix repair retry when gear condition did not improve"; span19[9] = "Fix gathering retry counter reset and node integrity checks"; span19[10] = "Fix reward redemption for tradeable items and stale reward task completion"; span19[11] = "Fix gear coffer gearset restore across interrupts and retries"; span19[12] = "Fix AutoDuty leveling loop not continuing until target level reached"; span19[13] = "Fix AutoDuty not persisting excessive LoopTimes values"; span19[14] = "Fix quest editor schema validation, dirty tracking, and atomic save"; span19[15] = "Fix death recovery respawn prompt clicking timing"; span19[16] = "Fix same-zone teleport skipping when it gains no distance"; span19[17] = "Fix stop condition removal and level-15 floor in StartLevelingMode IPC"; span19[18] = "Fix stop conditions not firing during leveling mode"; span19[19] = "Fix command-after-stop firing once per run instead of per frame"; span19[20] = "Fix soft hyphens and escaped macros in game string/dialogue comparisons"; span19[21] = "Fix skip aether current quest pickups once flying is unlocked"; span19[22] = "Fix class quest prioritization and level-lock pickup logic"; span19[23] = "Fix respecting skip setting for in-progress class quests over level 5"; span19[24] = "Fix repeatable quest completion flag being checked while quest is accepted"; span19[25] = "Fix priority quest pickup after shortcut-key strip"; span19[26] = "Fix duty category classification"; span19[27] = "Fix loading crash when InterruptHandler hook fails"; span19[28] = "Fix shop opening on wrong tab during vendor purchases"; span19[29] = "Fix aethernet destination selection and teleport retry on transient failures"; span19[30] = "Fix combat targeting overpull and self-defense getting stuck on evading mobs"; span19[31] = "Fix BossMod preset management during solo duties and between combat phases"; span19[32] = "Fix WrathCombo rotation mode enum values"; span19[33] = "Fix startup crash from Pictomancy initialization"; span19[34] = "Fix emote retry when target NPC not found"; span19[35] = "Fix interaction wait for missing objects instead of silently skipping"; span19[36] = "Fix PurchaseItem vendor interaction retry when shop not open"; span19[37] = "Fix GC shop cancel on handler reset"; span19[38] = "Fix quest sequence window latching closed after first close"; span19[39] = "Fix An Ill-conceived Venture locked without retainer entitlement"; span19[40] = "Fix various UI text clipping and wrapping issues"; reference27 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list28); ref ChangeEntry reference28 = ref span16[3]; num3 = 6; List list29 = new List(num3); CollectionsMarshal.SetCount(list29, num3); Span span20 = CollectionsMarshal.AsSpan(list29); span20[0] = "Add Moonfire Faire (2026) quests"; span20[1] = "Add 88 community-contributed quest ports"; span20[2] = "Add all missing gathering paths"; span20[3] = "Add AutoHook presets for ARR fishing quests"; span20[4] = "Add Shadow of the First missing sequence"; span20[5] = "Add Amaljaa, Sylph, and Ixal allied society NPC data"; reference28 = new ChangeEntry(EChangeCategory.QuestUpdates, "New Quest Paths", list29); reference24 = new ChangelogEntry("7.5.6", releaseDate8, list25); ref ChangelogEntry reference29 = ref span[8]; DateOnly releaseDate9 = new DateOnly(2026, 6, 25); num2 = 1; List list30 = new List(num2); CollectionsMarshal.SetCount(list30, num2); ref ChangeEntry reference30 = ref CollectionsMarshal.AsSpan(list30)[0]; num3 = 1; List list31 = new List(num3); CollectionsMarshal.SetCount(list31, num3); CollectionsMarshal.AsSpan(list31)[0] = "Add Breaking Brick Mountains (2026) event quest"; reference30 = new ChangeEntry(EChangeCategory.QuestUpdates, "New Quest Paths", list31); reference29 = new ChangelogEntry("7.5.5", releaseDate9, list30); ref ChangelogEntry reference31 = ref span[9]; DateOnly releaseDate10 = new DateOnly(2026, 6, 6); num2 = 1; List list32 = new List(num2); CollectionsMarshal.SetCount(list32, num2); ref ChangeEntry reference32 = ref CollectionsMarshal.AsSpan(list32)[0]; num3 = 1; List list33 = new List(num3); CollectionsMarshal.SetCount(list33, num3); CollectionsMarshal.AsSpan(list33)[0] = "Add Make It Rain (2026) seasonal quest"; reference32 = new ChangeEntry(EChangeCategory.QuestUpdates, "New Quest Paths", list33); reference31 = new ChangelogEntry("7.5.4", releaseDate10, list32); ref ChangelogEntry reference33 = ref span[10]; DateOnly releaseDate11 = new DateOnly(2026, 5, 12); num2 = 1; List list34 = new List(num2); CollectionsMarshal.SetCount(list34, num2); ref ChangeEntry reference34 = ref CollectionsMarshal.AsSpan(list34)[0]; num3 = 1; List list35 = new List(num3); CollectionsMarshal.SetCount(list35, num3); CollectionsMarshal.AsSpan(list35)[0] = "Add The Maiden's Rhapsody (2026) event quest"; reference34 = new ChangeEntry(EChangeCategory.QuestUpdates, "New Quest Paths", list35); reference33 = new ChangelogEntry("7.5.3", releaseDate11, list34); ref ChangelogEntry reference35 = ref span[11]; DateOnly releaseDate12 = new DateOnly(2026, 5, 1); num2 = 1; List list36 = new List(num2); CollectionsMarshal.SetCount(list36, num2); ref ChangeEntry reference36 = ref CollectionsMarshal.AsSpan(list36)[0]; num3 = 1; List list37 = new List(num3); CollectionsMarshal.SetCount(list37, num3); CollectionsMarshal.AsSpan(list37)[0] = "Revert vnavmesh SimpleMove IPC temporary fix"; reference36 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list37); reference35 = new ChangelogEntry("7.5.2", releaseDate12, list36); ref ChangelogEntry reference37 = ref span[12]; DateOnly releaseDate13 = new DateOnly(2026, 4, 30); num2 = 2; List list38 = new List(num2); CollectionsMarshal.SetCount(list38, num2); Span span21 = CollectionsMarshal.AsSpan(list38); ref ChangeEntry reference38 = ref span21[0]; num3 = 2; List list39 = new List(num3); CollectionsMarshal.SetCount(list39, num3); Span span22 = CollectionsMarshal.AsSpan(list39); span22[0] = "Add Windurst: The Third Walk quests"; span22[1] = "Add 7.5 MSQ"; reference38 = new ChangeEntry(EChangeCategory.QuestUpdates, "New Quest Paths", list39); ref ChangeEntry reference39 = ref span21[1]; num3 = 1; List list40 = new List(num3); CollectionsMarshal.SetCount(list40, num3); CollectionsMarshal.AsSpan(list40)[0] = "Use vnavmesh SimpleMove IPC to fix navmesh hanging the game (temporary fix)"; reference39 = new ChangeEntry(EChangeCategory.Changed, "Fixes", list40); reference37 = new ChangelogEntry("7.5.1", releaseDate13, list38); ref ChangelogEntry reference40 = ref span[13]; DateOnly releaseDate14 = new DateOnly(2026, 4, 29); num2 = 1; List list41 = new List(num2); CollectionsMarshal.SetCount(list41, num2); ref ChangeEntry reference41 = ref CollectionsMarshal.AsSpan(list41)[0]; num3 = 1; List list42 = new List(num3); CollectionsMarshal.SetCount(list42, num3); CollectionsMarshal.AsSpan(list42)[0] = "Api15"; reference41 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list42); reference40 = new ChangelogEntry("7.5.0", releaseDate14, list41); ref ChangelogEntry reference42 = ref span[14]; DateOnly releaseDate15 = new DateOnly(2026, 3, 24); num2 = 1; List list43 = new List(num2); CollectionsMarshal.SetCount(list43, num2); ref ChangeEntry reference43 = ref CollectionsMarshal.AsSpan(list43)[0]; num3 = 2; List list44 = new List(num3); CollectionsMarshal.SetCount(list44, num3); Span span23 = CollectionsMarshal.AsSpan(list44); span23[0] = "Add duty handling to external and qst"; span23[1] = "Fix duty farming NPC interact getting stuck after zone transition into duty"; reference43 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list44); reference42 = new ChangelogEntry("7.4.19", releaseDate15, list43); ref ChangelogEntry reference44 = ref span[15]; DateOnly releaseDate16 = new DateOnly(2026, 3, 24); num2 = 3; List list45 = new List(num2); CollectionsMarshal.SetCount(list45, num2); Span span24 = CollectionsMarshal.AsSpan(list45); ref ChangeEntry reference45 = ref span24[0]; num3 = 1; List list46 = new List(num3); CollectionsMarshal.SetCount(list46, num3); CollectionsMarshal.AsSpan(list46)[0] = "Add seasonal duty farming system (/qst duty)"; reference45 = new ChangeEntry(EChangeCategory.Added, "New Features", list46); ref ChangeEntry reference46 = ref span24[1]; num3 = 1; List list47 = new List(num3); CollectionsMarshal.SetCount(list47, num3); CollectionsMarshal.AsSpan(list47)[0] = "Add Hatching-tide 2026 quest"; reference46 = new ChangeEntry(EChangeCategory.QuestUpdates, "New Quest Paths", list47); ref ChangeEntry reference47 = ref span24[2]; num3 = 1; List list48 = new List(num3); CollectionsMarshal.SetCount(list48, num3); CollectionsMarshal.AsSpan(list48)[0] = "Quest path fixes"; reference47 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list48); reference44 = new ChangelogEntry("7.4.18", releaseDate16, list45); ref ChangelogEntry reference48 = ref span[16]; DateOnly releaseDate17 = new DateOnly(2026, 3, 1); num2 = 1; List list49 = new List(num2); CollectionsMarshal.SetCount(list49, num2); ref ChangeEntry reference49 = ref CollectionsMarshal.AsSpan(list49)[0]; num3 = 1; List list50 = new List(num3); CollectionsMarshal.SetCount(list50, num3); CollectionsMarshal.AsSpan(list50)[0] = "Quest path fixes"; reference49 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list50); reference48 = new ChangelogEntry("7.4.17", releaseDate17, list49); ref ChangelogEntry reference50 = ref span[17]; DateOnly releaseDate18 = new DateOnly(2026, 3, 1); num2 = 1; List list51 = new List(num2); CollectionsMarshal.SetCount(list51, num2); ref ChangeEntry reference51 = ref CollectionsMarshal.AsSpan(list51)[0]; num3 = 1; List list52 = new List(num3); CollectionsMarshal.SetCount(list52, num3); CollectionsMarshal.AsSpan(list52)[0] = "Enable TextAdvance, PandorasBox, and Automaton IPC integration during FATE farming"; reference51 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list52); reference50 = new ChangelogEntry("7.4.16", releaseDate18, list51); ref ChangelogEntry reference52 = ref span[18]; DateOnly releaseDate19 = new DateOnly(2026, 2, 28); num2 = 1; List list53 = new List(num2); CollectionsMarshal.SetCount(list53, num2); ref ChangeEntry reference53 = ref CollectionsMarshal.AsSpan(list53)[0]; num3 = 2; List list54 = new List(num3); CollectionsMarshal.SetCount(list54, num3); Span span25 = CollectionsMarshal.AsSpan(list54); span25[0] = "Fix FATE transform interact task never completing after NPC dialogue"; span25[1] = "Fix FATE farming loop not detecting completion when NPCs persist after FATE ends"; reference53 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list54); reference52 = new ChangelogEntry("7.4.15", releaseDate19, list53); ref ChangelogEntry reference54 = ref span[19]; DateOnly releaseDate20 = new DateOnly(2026, 2, 27); num2 = 2; List list55 = new List(num2); CollectionsMarshal.SetCount(list55, num2); Span span26 = CollectionsMarshal.AsSpan(list55); ref ChangeEntry reference55 = ref span26[0]; num3 = 2; List list56 = new List(num3); CollectionsMarshal.SetCount(list56, num3); Span span27 = CollectionsMarshal.AsSpan(list56); span27[0] = "Added prerequisite quest requirement to FATE farming definitions"; span27[1] = "Show active FATE in main quest UI and disable quest start during FATE farming"; reference55 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list56); ref ChangeEntry reference56 = ref span26[1]; num3 = 1; List list57 = new List(num3); CollectionsMarshal.SetCount(list57, num3); CollectionsMarshal.AsSpan(list57)[0] = "Fixed FATE farming buff expiry and added Curtain Call cleanup on stop"; reference56 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list57); reference54 = new ChangelogEntry("7.4.14", releaseDate20, list55); ref ChangelogEntry reference57 = ref span[20]; DateOnly releaseDate21 = new DateOnly(2026, 2, 27); num2 = 1; List list58 = new List(num2); CollectionsMarshal.SetCount(list58, num2); ref ChangeEntry reference58 = ref CollectionsMarshal.AsSpan(list58)[0]; num3 = 1; List list59 = new List(num3); CollectionsMarshal.SetCount(list59, num3); CollectionsMarshal.AsSpan(list59)[0] = "Fixed an issue where FATE actions were not performed during the Little Ladies Day (2026) FATE event"; reference58 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list59); reference57 = new ChangelogEntry("7.4.13", releaseDate21, list58); ref ChangelogEntry reference59 = ref span[21]; DateOnly releaseDate22 = new DateOnly(2026, 2, 26); num2 = 3; List list60 = new List(num2); CollectionsMarshal.SetCount(list60, num2); Span span28 = CollectionsMarshal.AsSpan(list60); ref ChangeEntry reference60 = ref span28[0]; num3 = 3; List list61 = new List(num3); CollectionsMarshal.SetCount(list61, num3); Span span29 = CollectionsMarshal.AsSpan(list61); span29[0] = "Add Saved Presets tab to quest priority window"; span29[1] = "Add passive FATE handling and per npc ability handling"; span29[2] = "Add FATE farming support"; reference60 = new ChangeEntry(EChangeCategory.Added, "New Features", list61); ref ChangeEntry reference61 = ref span28[1]; num3 = 1; List list62 = new List(num3); CollectionsMarshal.SetCount(list62, num3); CollectionsMarshal.AsSpan(list62)[0] = "Add Little Ladies' Day 2026 quests"; reference61 = new ChangeEntry(EChangeCategory.QuestUpdates, "New Quest Paths", list62); ref ChangeEntry reference62 = ref span28[2]; num3 = 1; List list63 = new List(num3); CollectionsMarshal.SetCount(list63, num3); CollectionsMarshal.AsSpan(list63)[0] = "Quest path fixes"; reference62 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list63); reference59 = new ChangelogEntry("7.4.12", releaseDate22, list60); ref ChangelogEntry reference63 = ref span[22]; DateOnly releaseDate23 = new DateOnly(2026, 2, 2); num2 = 2; List list64 = new List(num2); CollectionsMarshal.SetCount(list64, num2); Span span30 = CollectionsMarshal.AsSpan(list64); ref ChangeEntry reference64 = ref span30[0]; num3 = 1; List list65 = new List(num3); CollectionsMarshal.SetCount(list65, num3); CollectionsMarshal.AsSpan(list65)[0] = "Add Valentione's Day 2026 quest (The Icing on the Cake)"; reference64 = new ChangeEntry(EChangeCategory.QuestUpdates, "New Quest Paths", list65); ref ChangeEntry reference65 = ref span30[1]; num3 = 2; List list66 = new List(num3); CollectionsMarshal.SetCount(list66, num3); Span span31 = CollectionsMarshal.AsSpan(list66); span31[0] = "Updated Duty journal to include missing duty types"; span31[1] = "Added various missing sequences to quests"; reference65 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list66); reference63 = new ChangelogEntry("7.4.11", releaseDate23, list64); ref ChangelogEntry reference66 = ref span[23]; DateOnly releaseDate24 = new DateOnly(2026, 1, 18); num2 = 2; List list67 = new List(num2); CollectionsMarshal.SetCount(list67, num2); Span span32 = CollectionsMarshal.AsSpan(list67); ref ChangeEntry reference67 = ref span32[0]; num3 = 5; List list68 = new List(num3); CollectionsMarshal.SetCount(list68, num3); Span span33 = CollectionsMarshal.AsSpan(list68); span33[0] = "Added quest blacklisting"; span33[1] = "Added MSQ Priority config"; span33[2] = "Added Quest priority persistence config"; span33[3] = "Added Duties tab to Journal"; span33[4] = "Added GC shop handling and chocobo naming for chocobo quests"; reference67 = new ChangeEntry(EChangeCategory.Added, "Major Features", list68); ref ChangeEntry reference68 = ref span32[1]; num3 = 5; List list69 = new List(num3); CollectionsMarshal.SetCount(list69, num3); Span span34 = CollectionsMarshal.AsSpan(list69); span34[0] = "Removed PandorasBox dependency and added QTE handling"; span34[1] = "Removed CBT dependency and added Snipe handling"; span34[2] = "Added drag reordering to Stop condition quests"; span34[3] = "Ignore item level requirements if using Unsync config"; span34[4] = "Setting a Stop quest to Off no longer removes it from the list"; reference68 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list69); reference66 = new ChangelogEntry("7.4.10", releaseDate24, list67); ref ChangelogEntry reference69 = ref span[24]; DateOnly releaseDate25 = new DateOnly(2025, 12, 31); num2 = 3; List list70 = new List(num2); CollectionsMarshal.SetCount(list70, num2); Span span35 = CollectionsMarshal.AsSpan(list70); ref ChangeEntry reference70 = ref span35[0]; num3 = 1; List list71 = new List(num3); CollectionsMarshal.SetCount(list71, num3); CollectionsMarshal.AsSpan(list71)[0] = "Add Heavensturn (2026) quests"; reference70 = new ChangeEntry(EChangeCategory.QuestUpdates, "New Quest Paths", list71); ref ChangeEntry reference71 = ref span35[1]; num3 = 1; List list72 = new List(num3); CollectionsMarshal.SetCount(list72, num3); CollectionsMarshal.AsSpan(list72)[0] = "Added missing quest sequences"; reference71 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list72); ref ChangeEntry reference72 = ref span35[2]; num3 = 1; List list73 = new List(num3); CollectionsMarshal.SetCount(list73, num3); CollectionsMarshal.AsSpan(list73)[0] = "Fixed leveling mode not restarting properly"; reference72 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list73); reference69 = new ChangelogEntry("7.4.9", releaseDate25, list70); ref ChangelogEntry reference73 = ref span[25]; DateOnly releaseDate26 = new DateOnly(2025, 12, 29); num2 = 1; List list74 = new List(num2); CollectionsMarshal.SetCount(list74, num2); ref ChangeEntry reference74 = ref CollectionsMarshal.AsSpan(list74)[0]; num3 = 2; List list75 = new List(num3); CollectionsMarshal.SetCount(list75, num3); Span span36 = CollectionsMarshal.AsSpan(list75); span36[0] = "Fixed infinite teleport loop when multiple quests compete for priority"; span36[1] = "Fixed leveling mode enabling for quest duties"; reference74 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list75); reference73 = new ChangelogEntry("7.4.8", releaseDate26, list74); ref ChangelogEntry reference75 = ref span[26]; DateOnly releaseDate27 = new DateOnly(2025, 12, 28); num2 = 4; List list76 = new List(num2); CollectionsMarshal.SetCount(list76, num2); Span span37 = CollectionsMarshal.AsSpan(list76); ref ChangeEntry reference76 = ref span37[0]; num3 = 1; List list77 = new List(num3); CollectionsMarshal.SetCount(list77, num3); CollectionsMarshal.AsSpan(list77)[0] = "Added leveling mode when underleveled for MSQ"; reference76 = new ChangeEntry(EChangeCategory.Added, "Major Features", list77); ref ChangeEntry reference77 = ref span37[1]; num3 = 3; List list78 = new List(num3); CollectionsMarshal.SetCount(list78, num3); Span span38 = CollectionsMarshal.AsSpan(list78); span38[0] = "Added missing dungeons to Duties"; span38[1] = "Added Normal Raids and Alliance Raids to duties tab"; span38[2] = "Added Pause/Stop modes to stop conditions"; reference77 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list78); ref ChangeEntry reference78 = ref span37[2]; num3 = 1; List list79 = new List(num3); CollectionsMarshal.SetCount(list79, num3); CollectionsMarshal.AsSpan(list79)[0] = "Added leveling mode IPC: IsLevelingModeEnabled, SetLevelingModeEnabled, GetMsqLevelLockInfo, StartLevelingMode, StopLevelingMode"; reference78 = new ChangeEntry(EChangeCategory.Added, "IPC Changes", list79); ref ChangeEntry reference79 = ref span37[3]; num3 = 1; List list80 = new List(num3); CollectionsMarshal.SetCount(list80, num3); CollectionsMarshal.AsSpan(list80)[0] = "Fixed UI appearing in duties when debuff or interrupts occur"; reference79 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list80); reference75 = new ChangelogEntry("7.4.7", releaseDate27, list76); ref ChangelogEntry reference80 = ref span[27]; DateOnly releaseDate28 = new DateOnly(2025, 12, 23); num2 = 2; List list81 = new List(num2); CollectionsMarshal.SetCount(list81, num2); Span span39 = CollectionsMarshal.AsSpan(list81); ref ChangeEntry reference81 = ref span39[0]; num3 = 1; List list82 = new List(num3); CollectionsMarshal.SetCount(list82, num3); CollectionsMarshal.AsSpan(list82)[0] = "Added Cinema Mode to not skip cutscenes"; reference81 = new ChangeEntry(EChangeCategory.Added, "Major Features", list82); ref ChangeEntry reference82 = ref span39[1]; num3 = 2; List list83 = new List(num3); CollectionsMarshal.SetCount(list83, num3); Span span40 = CollectionsMarshal.AsSpan(list83); span40[0] = "Added handling for Unsync (Party) to Party Watchdog and configuration to disable if in party"; span40[1] = "Stop conditions now act as a true stop"; reference82 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list83); reference80 = new ChangelogEntry("7.4.6", releaseDate28, list81); ref ChangelogEntry reference83 = ref span[28]; DateOnly releaseDate29 = new DateOnly(2025, 12, 22); num2 = 1; List list84 = new List(num2); CollectionsMarshal.SetCount(list84, num2); ref ChangeEntry reference84 = ref CollectionsMarshal.AsSpan(list84)[0]; num3 = 2; List list85 = new List(num3); CollectionsMarshal.SetCount(list85, num3); Span span41 = CollectionsMarshal.AsSpan(list85); span41[0] = "Dive adjustments"; span41[1] = "Logging message adjustments"; reference84 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list85); reference83 = new ChangelogEntry("7.4.5", releaseDate29, list84); ref ChangelogEntry reference85 = ref span[29]; DateOnly releaseDate30 = new DateOnly(2025, 12, 21); num2 = 2; List list86 = new List(num2); CollectionsMarshal.SetCount(list86, num2); Span span42 = CollectionsMarshal.AsSpan(list86); ref ChangeEntry reference86 = ref span42[0]; num3 = 1; List list87 = new List(num3); CollectionsMarshal.SetCount(list87, num3); CollectionsMarshal.AsSpan(list87)[0] = "Changelog only shows once per update now"; reference86 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list87); ref ChangeEntry reference87 = ref span42[1]; num3 = 1; List list88 = new List(num3); CollectionsMarshal.SetCount(list88, num3); CollectionsMarshal.AsSpan(list88)[0] = "Fixed gathering paths loading"; reference87 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list88); reference85 = new ChangelogEntry("7.4.4", releaseDate30, list86); ref ChangelogEntry reference88 = ref span[30]; DateOnly releaseDate31 = new DateOnly(2025, 12, 21); num2 = 1; List list89 = new List(num2); CollectionsMarshal.SetCount(list89, num2); ref ChangeEntry reference89 = ref CollectionsMarshal.AsSpan(list89)[0]; num3 = 1; List list90 = new List(num3); CollectionsMarshal.SetCount(list90, num3); CollectionsMarshal.AsSpan(list90)[0] = "Fixed changelog version checks"; reference89 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list90); reference88 = new ChangelogEntry("7.4.3", releaseDate31, list89); ref ChangelogEntry reference90 = ref span[31]; DateOnly releaseDate32 = new DateOnly(2025, 12, 20); num2 = 2; List list91 = new List(num2); CollectionsMarshal.SetCount(list91, num2); Span span43 = CollectionsMarshal.AsSpan(list91); ref ChangeEntry reference91 = ref span43[0]; num3 = 1; List list92 = new List(num3); CollectionsMarshal.SetCount(list92, num3); CollectionsMarshal.AsSpan(list92)[0] = "Add 7.4 Starlight Celebration (2025) quest"; reference91 = new ChangeEntry(EChangeCategory.QuestUpdates, "New Quest Paths", list92); ref ChangeEntry reference92 = ref span43[1]; num3 = 1; List list93 = new List(num3); CollectionsMarshal.SetCount(list93, num3); CollectionsMarshal.AsSpan(list93)[0] = "Fixed 7.4 MSQ"; reference92 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list93); reference90 = new ChangelogEntry("7.4.2", releaseDate32, list91); ref ChangelogEntry reference93 = ref span[32]; DateOnly releaseDate33 = new DateOnly(2025, 12, 19); num2 = 1; List list94 = new List(num2); CollectionsMarshal.SetCount(list94, num2); ref ChangeEntry reference94 = ref CollectionsMarshal.AsSpan(list94)[0]; num3 = 2; List list95 = new List(num3); CollectionsMarshal.SetCount(list95, num3); Span span44 = CollectionsMarshal.AsSpan(list95); span44[0] = "Add 7.4 MSQ"; span44[1] = "Add 7.4 Arcadion Raid quests"; reference94 = new ChangeEntry(EChangeCategory.QuestUpdates, "New Quest Paths", list95); reference93 = new ChangelogEntry("7.4.1", releaseDate33, list94); ref ChangelogEntry reference95 = ref span[33]; DateOnly releaseDate34 = new DateOnly(2025, 12, 17); num2 = 1; List list96 = new List(num2); CollectionsMarshal.SetCount(list96, num2); CollectionsMarshal.AsSpan(list96)[0] = new ChangeEntry(EChangeCategory.Changed, "Api 14 update"); reference95 = new ChangelogEntry("7.4.0", releaseDate34, list96); ref ChangelogEntry reference96 = ref span[34]; DateOnly releaseDate35 = new DateOnly(2025, 12, 6); num2 = 2; List list97 = new List(num2); CollectionsMarshal.SetCount(list97, num2); Span span45 = CollectionsMarshal.AsSpan(list97); ref ChangeEntry reference97 = ref span45[0]; num3 = 4; List list98 = new List(num3); CollectionsMarshal.SetCount(list98, num3); Span span46 = CollectionsMarshal.AsSpan(list98); span46[0] = "Added reloading and rebuilding to movement system"; span46[1] = "Improved interrupts and refresh states to allow continuation of questing"; span46[2] = "Added player input detection to stop automation when manually moving character"; span46[3] = "Added various missing quest sequences"; reference97 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list98); ref ChangeEntry reference98 = ref span45[1]; num3 = 1; List list99 = new List(num3); CollectionsMarshal.SetCount(list99, num3); CollectionsMarshal.AsSpan(list99)[0] = "Fixed reset task state to prevent stuck interactions after interruption"; reference98 = new ChangeEntry(EChangeCategory.Fixed, "Fixes", list99); reference96 = new ChangelogEntry("7.38.9", releaseDate35, list97); ref ChangelogEntry reference99 = ref span[35]; DateOnly releaseDate36 = new DateOnly(2025, 11, 29); num2 = 2; List list100 = new List(num2); CollectionsMarshal.SetCount(list100, num2); Span span47 = CollectionsMarshal.AsSpan(list100); ref ChangeEntry reference100 = ref span47[0]; num3 = 3; List list101 = new List(num3); CollectionsMarshal.SetCount(list101, num3); Span span48 = CollectionsMarshal.AsSpan(list101); span48[0] = "Movement update with automatic retrying if character can't reach target position"; span48[1] = "Added Hunt mob data"; span48[2] = "Refactored commands"; reference100 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list101); ref ChangeEntry reference101 = ref span47[1]; num3 = 3; List list102 = new List(num3); CollectionsMarshal.SetCount(list102, num3); Span span49 = CollectionsMarshal.AsSpan(list102); span49[0] = "Fixed quest (Way of the Archer)"; span49[1] = "Fixed quest (Spirithold Broken)"; span49[2] = "Fixed quest (It's Probably Not Pirates)"; reference101 = new ChangeEntry(EChangeCategory.Fixed, "Bug fixes", list102); reference99 = new ChangelogEntry("7.38.8", releaseDate36, list100); ref ChangelogEntry reference102 = ref span[36]; DateOnly releaseDate37 = new DateOnly(2025, 11, 25); num2 = 2; List list103 = new List(num2); CollectionsMarshal.SetCount(list103, num2); Span span50 = CollectionsMarshal.AsSpan(list103); ref ChangeEntry reference103 = ref span50[0]; num3 = 2; List list104 = new List(num3); CollectionsMarshal.SetCount(list104, num3); Span span51 = CollectionsMarshal.AsSpan(list104); span51[0] = "Added individual sequence stop condition for each quest"; span51[1] = "Added Trials to Duties tab in config"; reference103 = new ChangeEntry(EChangeCategory.Added, "Major features", list104); ref ChangeEntry reference104 = ref span50[1]; num3 = 1; List list105 = new List(num3); CollectionsMarshal.SetCount(list105, num3); CollectionsMarshal.AsSpan(list105)[0] = "Added IPC for stop conditions: GetQuestSequenceStopCondition, SetQuestSequenceStopCondition, RemoveQuestSequenceStopCondition, GetAllQuestSequenceStopConditions"; reference104 = new ChangeEntry(EChangeCategory.Added, "IPC changes", list105); reference102 = new ChangelogEntry("7.38.7", releaseDate37, list103); ref ChangelogEntry reference105 = ref span[37]; DateOnly releaseDate38 = new DateOnly(2025, 11, 25); num2 = 3; List list106 = new List(num2); CollectionsMarshal.SetCount(list106, num2); Span span52 = CollectionsMarshal.AsSpan(list106); ref ChangeEntry reference106 = ref span52[0]; num3 = 2; List list107 = new List(num3); CollectionsMarshal.SetCount(list107, num3); Span span53 = CollectionsMarshal.AsSpan(list107); span53[0] = "Updated Allied Society journal text"; span53[1] = "Improved Allied Society rank handling"; reference106 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list107); ref ChangeEntry reference107 = ref span52[1]; num3 = 1; List list108 = new List(num3); CollectionsMarshal.SetCount(list108, num3); CollectionsMarshal.AsSpan(list108)[0] = "Added IPC for Allied Society: AddAlliedSocietyOptimalQuests, GetAlliedSocietyOptimalQuests"; reference107 = new ChangeEntry(EChangeCategory.Added, "IPC changes", list108); ref ChangeEntry reference108 = ref span52[2]; num3 = 1; List list109 = new List(num3); CollectionsMarshal.SetCount(list109, num3); CollectionsMarshal.AsSpan(list109)[0] = "Fixed quest (We Come in Peace)"; reference108 = new ChangeEntry(EChangeCategory.Fixed, "Bug fixes", list109); reference105 = new ChangelogEntry("7.38.6", releaseDate38, list106); ref ChangelogEntry reference109 = ref span[38]; DateOnly releaseDate39 = new DateOnly(2025, 11, 24); num2 = 2; List list110 = new List(num2); CollectionsMarshal.SetCount(list110, num2); Span span54 = CollectionsMarshal.AsSpan(list110); ref ChangeEntry reference110 = ref span54[0]; num3 = 1; List list111 = new List(num3); CollectionsMarshal.SetCount(list111, num3); CollectionsMarshal.AsSpan(list111)[0] = "Added Allied Society daily allowance tracker with bulk quest adding buttons"; reference110 = new ChangeEntry(EChangeCategory.Added, "Major features", list111); ref ChangeEntry reference111 = ref span54[1]; num3 = 1; List list112 = new List(num3); CollectionsMarshal.SetCount(list112, num3); CollectionsMarshal.AsSpan(list112)[0] = "Added IPC for Allied Society: GetRemainingAllowances, GetTimeUntilReset, GetAvailableQuestIds, GetAllAvailableQuestCounts, IsMaxRank, GetCurrentRank, GetSocietiesWithAvailableQuests"; reference111 = new ChangeEntry(EChangeCategory.Added, "IPC changes", list112); reference109 = new ChangelogEntry("7.38.5", releaseDate39, list110); ref ChangelogEntry reference112 = ref span[39]; DateOnly releaseDate40 = new DateOnly(2025, 11, 23); num2 = 2; List list113 = new List(num2); CollectionsMarshal.SetCount(list113, num2); Span span55 = CollectionsMarshal.AsSpan(list113); ref ChangeEntry reference113 = ref span55[0]; num3 = 1; List list114 = new List(num3); CollectionsMarshal.SetCount(list114, num3); CollectionsMarshal.AsSpan(list114)[0] = "Explicitly declare support for BMR singleplayer duty (The Rematch)"; reference113 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list114); ref ChangeEntry reference114 = ref span55[1]; num3 = 8; List list115 = new List(num3); CollectionsMarshal.SetCount(list115, num3); Span span56 = CollectionsMarshal.AsSpan(list115); span56[0] = "Fixed quest (Microbrewing) to not get stuck near ramp"; span56[1] = "Fixed quest (The Illuminated Land) where pathing would kill the player due to fall damage"; span56[2] = "Fixed quest (It's Probably Not Pirates) improper pathing and removed unneeded step"; span56[3] = "Fixed quest (The Black Wolf's Ultimatum) not exiting landing area"; span56[4] = "Fixed quest (Magiteknical Failure) from not interacting with NPC due to being mounted"; span56[5] = "Fixed quest (We Come in Peace) shortcut navigation"; span56[6] = "Fixed quest (Poisoned Hearts) where incorrect pathing caused the player to die"; span56[7] = "Fixed quests (Savage Snares) and (An Apple a Day) not detecting kills"; reference114 = new ChangeEntry(EChangeCategory.Fixed, "Bug fixes", list115); reference112 = new ChangelogEntry("7.38.4", releaseDate40, list113); ref ChangelogEntry reference115 = ref span[40]; DateOnly releaseDate41 = new DateOnly(2025, 11, 23); num2 = 3; List list116 = new List(num2); CollectionsMarshal.SetCount(list116, num2); Span span57 = CollectionsMarshal.AsSpan(list116); ref ChangeEntry reference116 = ref span57[0]; num3 = 2; List list117 = new List(num3); CollectionsMarshal.SetCount(list117, num3); Span span58 = CollectionsMarshal.AsSpan(list117); span58[0] = "Added RequireHq to crafting InteractionType"; span58[1] = "Mark GC quests as Locked if rank not achieved"; reference116 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list117); ref ChangeEntry reference117 = ref span57[1]; num3 = 2; List list118 = new List(num3); CollectionsMarshal.SetCount(list118, num3); Span span59 = CollectionsMarshal.AsSpan(list118); span59[0] = "Added IPC for stop conditions: GetStopConditionsEnabled, SetStopConditionsEnabled, GetStopQuestList, AddStopQuest, RemoveStopQuest, ClearStopQuests, GetLevelStopCondition, SetLevelStopCondition, GetSequenceStopCondition, SetSequenceStopCondition"; span59[1] = "Added IPC for priority quests: GetPriorityQuests, RemovePriorityQuest, ReorderPriorityQuest, GetAvailablePresets, GetPresetQuests, AddPresetToPriority, IsPresetAvailable, IsQuestInPriority, GetQuestPriorityIndex, HasAvailablePriorityQuests"; reference117 = new ChangeEntry(EChangeCategory.Added, "IPC changes", list118); ref ChangeEntry reference118 = ref span57[2]; num3 = 3; List list119 = new List(num3); CollectionsMarshal.SetCount(list119, num3); Span span60 = CollectionsMarshal.AsSpan(list119); span60[0] = "Fixed line breaks not working in dialog strings"; span60[1] = "Fixed quest (Labor of Love)"; span60[2] = "Fixed quest (Sea of Sorrow)"; reference118 = new ChangeEntry(EChangeCategory.Fixed, "Bug fixes", list119); reference115 = new ChangelogEntry("7.38.3", releaseDate41, list116); ref ChangelogEntry reference119 = ref span[41]; DateOnly releaseDate42 = new DateOnly(2025, 11, 18); num2 = 3; List list120 = new List(num2); CollectionsMarshal.SetCount(list120, num2); Span span61 = CollectionsMarshal.AsSpan(list120); ref ChangeEntry reference120 = ref span61[0]; num3 = 2; List list121 = new List(num3); CollectionsMarshal.SetCount(list121, num3); Span span62 = CollectionsMarshal.AsSpan(list121); span62[0] = "Auto Duty unsync options for each duty (Duty Support, Unsync Solo, Unsync Party)"; span62[1] = "Added Auto Duty unsync options to quest schema and updated quests using old unsync method"; reference120 = new ChangeEntry(EChangeCategory.Added, "Major features", list121); ref ChangeEntry reference121 = ref span61[1]; num3 = 3; List list122 = new List(num3); CollectionsMarshal.SetCount(list122, num3); Span span63 = CollectionsMarshal.AsSpan(list122); span63[0] = "Added IPC for duty sync handling: GetDefaultDutyMode, SetDefaultDutyMode"; span63[1] = "Added IPC for duty mode overrides: GetDutyModeOverride, SetDutyModeOverride"; span63[2] = "Added IPC for clearing overrides: ClearDutyModeOverride, ClearAllDutyModeOverrides"; reference121 = new ChangeEntry(EChangeCategory.Added, "IPC changes", list122); span61[2] = new ChangeEntry(EChangeCategory.Fixed, "Fixed quest (Constant Cravings)"); reference119 = new ChangelogEntry("7.38.2", releaseDate42, list120); ref ChangelogEntry reference122 = ref span[42]; DateOnly releaseDate43 = new DateOnly(2025, 11, 18); num2 = 3; List list123 = new List(num2); CollectionsMarshal.SetCount(list123, num2); Span span64 = CollectionsMarshal.AsSpan(list123); ref ChangeEntry reference123 = ref span64[0]; num3 = 1; List list124 = new List(num3); CollectionsMarshal.SetCount(list124, num3); CollectionsMarshal.AsSpan(list124)[0] = "Added new fields to quest schema"; reference123 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list124); ref ChangeEntry reference124 = ref span64[1]; num3 = 3; List list125 = new List(num3); CollectionsMarshal.SetCount(list125, num3); Span span65 = CollectionsMarshal.AsSpan(list125); span65[0] = "A Faerie Tale Come True"; span65[1] = "Constant Cravings"; span65[2] = "A Bridge Too Full"; reference124 = new ChangeEntry(EChangeCategory.QuestUpdates, "Added new quest paths", list125); ref ChangeEntry reference125 = ref span64[2]; num3 = 3; List list126 = new List(num3); CollectionsMarshal.SetCount(list126, num3); Span span66 = CollectionsMarshal.AsSpan(list126); span66[0] = "Fixed various quest schemas"; span66[1] = "Fixed changelog bullet point encoding"; span66[2] = "Fixed item use to wait until item is used before next action"; reference125 = new ChangeEntry(EChangeCategory.Fixed, "Bug fixes", list126); reference122 = new ChangelogEntry("7.38.1", releaseDate43, list123); ref ChangelogEntry reference126 = ref span[43]; DateOnly releaseDate44 = new DateOnly(2025, 11, 17); num2 = 5; List list127 = new List(num2); CollectionsMarshal.SetCount(list127, num2); Span span67 = CollectionsMarshal.AsSpan(list127); ref ChangeEntry reference127 = ref span67[0]; num3 = 2; List list128 = new List(num3); CollectionsMarshal.SetCount(list128, num3); Span span68 = CollectionsMarshal.AsSpan(list128); span68[0] = "Quest sequence window to show expected sequences in each quest (with quest searching)"; span68[1] = "Changelog"; reference127 = new ChangeEntry(EChangeCategory.Added, "Major features", list128); ref ChangeEntry reference128 = ref span67[1]; num3 = 2; List list129 = new List(num3); CollectionsMarshal.SetCount(list129, num3); Span span69 = CollectionsMarshal.AsSpan(list129); span69[0] = "Updated quest schemas"; span69[1] = "Added search bar to preferred mounts and capitalization to mirror game mount names"; reference128 = new ChangeEntry(EChangeCategory.Changed, "Improvements", list129); ref ChangeEntry reference129 = ref span67[2]; num3 = 3; List list130 = new List(num3); CollectionsMarshal.SetCount(list130, num3); Span span70 = CollectionsMarshal.AsSpan(list130); span70[0] = "Renamed IsQuestCompleted → IsQuestComplete"; span70[1] = "Renamed IsQuestAvailable → IsReadyToAcceptQuest"; span70[2] = "Added GetCurrentTask IPC"; reference129 = new ChangeEntry(EChangeCategory.Changed, "IPC changes", list130); span67[3] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added all Hildibrand quests"); span67[4] = new ChangeEntry(EChangeCategory.Fixed, "Fixed credits/cutscenes playback"); reference126 = new ChangelogEntry("7.38.0", releaseDate44, list127); ref ChangelogEntry reference130 = ref span[44]; DateOnly releaseDate45 = new DateOnly(2025, 11, 8); num2 = 1; List list131 = new List(num2); CollectionsMarshal.SetCount(list131, num2); CollectionsMarshal.AsSpan(list131)[0] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added Fall Guys quest (Just Crowning Around)"); reference130 = new ChangelogEntry("6.38", releaseDate45, list131); ref ChangelogEntry reference131 = ref span[45]; DateOnly releaseDate46 = new DateOnly(2025, 11, 8); num2 = 1; List list132 = new List(num2); CollectionsMarshal.SetCount(list132, num2); CollectionsMarshal.AsSpan(list132)[0] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added Cosmic Exploration and various unlock quests"); reference131 = new ChangelogEntry("6.37", releaseDate46, list132); ref ChangelogEntry reference132 = ref span[46]; DateOnly releaseDate47 = new DateOnly(2025, 11, 2); num2 = 1; List list133 = new List(num2); CollectionsMarshal.SetCount(list133, num2); CollectionsMarshal.AsSpan(list133)[0] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy Rank 6 quest (With High Spirits)"); reference132 = new ChangelogEntry("6.36", releaseDate47, list133); ref ChangelogEntry reference133 = ref span[47]; DateOnly releaseDate48 = new DateOnly(2025, 10, 28); num2 = 1; List list134 = new List(num2); CollectionsMarshal.SetCount(list134, num2); CollectionsMarshal.AsSpan(list134)[0] = new ChangeEntry(EChangeCategory.Fixed, "Fixed level 3 MSQ handling if character started on non-XP buff world"); reference133 = new ChangelogEntry("6.35", releaseDate48, list134); ref ChangelogEntry reference134 = ref span[48]; DateOnly releaseDate49 = new DateOnly(2025, 10, 23); num2 = 2; List list135 = new List(num2); CollectionsMarshal.SetCount(list135, num2); Span span71 = CollectionsMarshal.AsSpan(list135); span71[0] = new ChangeEntry(EChangeCategory.Added, "Added clear priority quests on logout and on completion config settings"); span71[1] = new ChangeEntry(EChangeCategory.Fixed, "Fixed priority quest importing to respect import order"); reference134 = new ChangelogEntry("6.34", releaseDate49, list135); ref ChangelogEntry reference135 = ref span[49]; DateOnly releaseDate50 = new DateOnly(2025, 10, 23); num2 = 1; List list136 = new List(num2); CollectionsMarshal.SetCount(list136, num2); CollectionsMarshal.AsSpan(list136)[0] = new ChangeEntry(EChangeCategory.Fixed, "Fixed RSR combat module"); reference135 = new ChangelogEntry("6.33", releaseDate50, list136); ref ChangelogEntry reference136 = ref span[50]; DateOnly releaseDate51 = new DateOnly(2025, 10, 23); num2 = 1; List list137 = new List(num2); CollectionsMarshal.SetCount(list137, num2); CollectionsMarshal.AsSpan(list137)[0] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy Rank 5 quest (Forged in Corn)"); reference136 = new ChangelogEntry("6.32", releaseDate51, list137); ref ChangelogEntry reference137 = ref span[51]; DateOnly releaseDate52 = new DateOnly(2025, 10, 21); num2 = 1; List list138 = new List(num2); CollectionsMarshal.SetCount(list138, num2); CollectionsMarshal.AsSpan(list138)[0] = new ChangeEntry(EChangeCategory.Changed, "Added checks for moogle and allied society quests when using add all available quests"); reference137 = new ChangelogEntry("6.31", releaseDate52, list138); ref ChangelogEntry reference138 = ref span[52]; DateOnly releaseDate53 = new DateOnly(2025, 10, 21); num2 = 1; List list139 = new List(num2); CollectionsMarshal.SetCount(list139, num2); CollectionsMarshal.AsSpan(list139)[0] = new ChangeEntry(EChangeCategory.Added, "Added button to journal that allows adding all available quests to priority"); reference138 = new ChangelogEntry("6.30", releaseDate53, list139); ref ChangelogEntry reference139 = ref span[53]; DateOnly releaseDate54 = new DateOnly(2025, 10, 20); num2 = 2; List list140 = new List(num2); CollectionsMarshal.SetCount(list140, num2); Span span72 = CollectionsMarshal.AsSpan(list140); ref ChangeEntry reference140 = ref span72[0]; num3 = 2; List list141 = new List(num3); CollectionsMarshal.SetCount(list141, num3); Span span73 = CollectionsMarshal.AsSpan(list141); span73[0] = "Added item count to combat handling rework"; span73[1] = "Updated Pandora conflicting features"; reference140 = new ChangeEntry(EChangeCategory.Changed, "Combat handling improvements", list141); span72[1] = new ChangeEntry(EChangeCategory.Fixed, "Fixed quest to purchase Gysahl Greens if not in inventory"); reference139 = new ChangelogEntry("6.29", releaseDate54, list140); ref ChangelogEntry reference141 = ref span[54]; DateOnly releaseDate55 = new DateOnly(2025, 10, 19); num2 = 1; List list142 = new List(num2); CollectionsMarshal.SetCount(list142, num2); CollectionsMarshal.AsSpan(list142)[0] = new ChangeEntry(EChangeCategory.Changed, "Reworked kill count combat handling - combat and enemy kills are now processed instantly"); reference141 = new ChangelogEntry("6.28", releaseDate55, list142); ref ChangelogEntry reference142 = ref span[55]; DateOnly releaseDate56 = new DateOnly(2025, 10, 18); num2 = 2; List list143 = new List(num2); CollectionsMarshal.SetCount(list143, num2); Span span74 = CollectionsMarshal.AsSpan(list143); span74[0] = new ChangeEntry(EChangeCategory.Changed, "Improved Aether Current checking logic"); span74[1] = new ChangeEntry(EChangeCategory.Fixed, "Fixed Chocobo Taxi Stand CheckSkip error and Patch 7.3 Fantasia unlock quest date/time"); reference142 = new ChangelogEntry("6.27", releaseDate56, list143); ref ChangelogEntry reference143 = ref span[56]; DateOnly releaseDate57 = new DateOnly(2025, 10, 18); num2 = 1; List list144 = new List(num2); CollectionsMarshal.SetCount(list144, num2); CollectionsMarshal.AsSpan(list144)[0] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy rank 4 quests"); reference143 = new ChangelogEntry("6.26", releaseDate57, list144); ref ChangelogEntry reference144 = ref span[57]; DateOnly releaseDate58 = new DateOnly(2025, 10, 17); num2 = 1; List list145 = new List(num2); CollectionsMarshal.SetCount(list145, num2); CollectionsMarshal.AsSpan(list145)[0] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added All Saints' Wake 2025 quests and 7.35 Yok Huy rank 4 quests"); reference144 = new ChangelogEntry("6.25", releaseDate58, list145); ref ChangelogEntry reference145 = ref span[58]; DateOnly releaseDate59 = new DateOnly(2025, 10, 16); num2 = 1; List list146 = new List(num2); CollectionsMarshal.SetCount(list146, num2); CollectionsMarshal.AsSpan(list146)[0] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy rank 4 quests and Deep Dungeon quest"); reference145 = new ChangelogEntry("6.24", releaseDate59, list146); ref ChangelogEntry reference146 = ref span[59]; DateOnly releaseDate60 = new DateOnly(2025, 10, 13); num2 = 1; List list147 = new List(num2); CollectionsMarshal.SetCount(list147, num2); CollectionsMarshal.AsSpan(list147)[0] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy rank 3 quest (Larder Logistics)"); reference146 = new ChangelogEntry("6.23", releaseDate60, list147); ref ChangelogEntry reference147 = ref span[60]; DateOnly releaseDate61 = new DateOnly(2025, 10, 12); num2 = 3; List list148 = new List(num2); CollectionsMarshal.SetCount(list148, num2); Span span75 = CollectionsMarshal.AsSpan(list148); span75[0] = new ChangeEntry(EChangeCategory.Changed, "Prevent disabled or Locked quests from being started as 'Start as next quest'"); span75[1] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy rank 3 quests"); span75[2] = new ChangeEntry(EChangeCategory.Fixed, "Fixed Yok Huy quest and journal quest chain priority issues"); reference147 = new ChangelogEntry("6.22", releaseDate61, list148); ref ChangelogEntry reference148 = ref span[61]; DateOnly releaseDate62 = new DateOnly(2025, 10, 12); num2 = 2; List list149 = new List(num2); CollectionsMarshal.SetCount(list149, num2); Span span76 = CollectionsMarshal.AsSpan(list149); span76[0] = new ChangeEntry(EChangeCategory.Added, "Added expansion abbreviation to journal window"); span76[1] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy rank 3 quests"); reference148 = new ChangelogEntry("6.21", releaseDate62, list149); ref ChangelogEntry reference149 = ref span[62]; DateOnly releaseDate63 = new DateOnly(2025, 10, 10); num2 = 2; List list150 = new List(num2); CollectionsMarshal.SetCount(list150, num2); Span span77 = CollectionsMarshal.AsSpan(list150); span77[0] = new ChangeEntry(EChangeCategory.Changed, "Allow completed repeatable quests to be used with 'Add quest and requirements to priority' feature"); span77[1] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy rank 1 quest (A Work of Cart)"); reference149 = new ChangelogEntry("6.20", releaseDate63, list150); ref ChangelogEntry reference150 = ref span[63]; DateOnly releaseDate64 = new DateOnly(2025, 10, 9); num2 = 3; List list151 = new List(num2); CollectionsMarshal.SetCount(list151, num2); Span span78 = CollectionsMarshal.AsSpan(list151); span78[0] = new ChangeEntry(EChangeCategory.Added, "Added config to batch Allied Society quest turn-ins"); span78[1] = new ChangeEntry(EChangeCategory.Changed, "Repeatable quests now show correct availability state in journal"); span78[2] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy rank 2 quests"); reference150 = new ChangelogEntry("6.19", releaseDate64, list151); ref ChangelogEntry reference151 = ref span[64]; DateOnly releaseDate65 = new DateOnly(2025, 10, 9); num2 = 2; List list152 = new List(num2); CollectionsMarshal.SetCount(list152, num2); Span span79 = CollectionsMarshal.AsSpan(list152); span79[0] = new ChangeEntry(EChangeCategory.Changed, "Show once completed quests with improved state display"); span79[1] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy daily quest and improvements to various Yok Huy quests"); reference151 = new ChangelogEntry("6.18", releaseDate65, list152); ref ChangelogEntry reference152 = ref span[65]; DateOnly releaseDate66 = new DateOnly(2025, 10, 8); num2 = 1; List list153 = new List(num2); CollectionsMarshal.SetCount(list153, num2); CollectionsMarshal.AsSpan(list153)[0] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Yok Huy rank 1 and rank 2 quests"); reference152 = new ChangelogEntry("6.17", releaseDate66, list153); ref ChangelogEntry reference153 = ref span[66]; DateOnly releaseDate67 = new DateOnly(2025, 10, 8); num2 = 1; List list154 = new List(num2); CollectionsMarshal.SetCount(list154, num2); CollectionsMarshal.AsSpan(list154)[0] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Deep Dungeon quest (Faerie Tale)"); reference153 = new ChangelogEntry("6.16", releaseDate67, list154); ref ChangelogEntry reference154 = ref span[67]; DateOnly releaseDate68 = new DateOnly(2025, 10, 8); num2 = 2; List list155 = new List(num2); CollectionsMarshal.SetCount(list155, num2); Span span80 = CollectionsMarshal.AsSpan(list155); span80[0] = new ChangeEntry(EChangeCategory.Changed, "Dalamud cleanup"); span80[1] = new ChangeEntry(EChangeCategory.Fixed, "Fixed quest level requirement check log spam"); reference154 = new ChangelogEntry("6.15", releaseDate68, list155); ref ChangelogEntry reference155 = ref span[68]; DateOnly releaseDate69 = new DateOnly(2025, 10, 8); num2 = 1; List list156 = new List(num2); CollectionsMarshal.SetCount(list156, num2); CollectionsMarshal.AsSpan(list156)[0] = new ChangeEntry(EChangeCategory.Fixed, "Fixed abandoned quest check logic if quest were MSQ"); reference155 = new ChangelogEntry("6.14", releaseDate69, list156); ref ChangelogEntry reference156 = ref span[69]; DateOnly releaseDate70 = new DateOnly(2025, 10, 8); num2 = 2; List list157 = new List(num2); CollectionsMarshal.SetCount(list157, num2); Span span81 = CollectionsMarshal.AsSpan(list157); ref ChangeEntry reference157 = ref span81[0]; num3 = 3; List list158 = new List(num3); CollectionsMarshal.SetCount(list158, num3); Span span82 = CollectionsMarshal.AsSpan(list158); span82[0] = "Context menu option to add required quests and their chain to priority list"; span82[1] = "AetheryteShortcut to multiple quests"; span82[2] = "Artisan as a recommended plugin/dependency"; reference157 = new ChangeEntry(EChangeCategory.Added, "Quest improvements", list158); span81[1] = new ChangeEntry(EChangeCategory.Fixed, "Fixed abandoned quest check and priority list issues"); reference156 = new ChangelogEntry("6.13", releaseDate70, list157); ref ChangelogEntry reference158 = ref span[70]; DateOnly releaseDate71 = new DateOnly(2025, 10, 7); num2 = 4; List list159 = new List(num2); CollectionsMarshal.SetCount(list159, num2); Span span83 = CollectionsMarshal.AsSpan(list159); ref ChangeEntry reference159 = ref span83[0]; num3 = 4; List list160 = new List(num3); CollectionsMarshal.SetCount(list160, num3); Span span84 = CollectionsMarshal.AsSpan(list160); span84[0] = "FATE combat handling with auto level syncing"; span84[1] = "Start accepted quests from journal with 'Start as next quest'"; span84[2] = "Update quest tracking when quests are hidden or prioritised in game"; span84[3] = "QuestMap as a recommended plugin/dependency"; reference159 = new ChangeEntry(EChangeCategory.Added, "FATE and quest tracking", list160); ref ChangeEntry reference160 = ref span83[1]; num3 = 3; List list161 = new List(num3); CollectionsMarshal.SetCount(list161, num3); Span span85 = CollectionsMarshal.AsSpan(list161); span85[0] = "Always prioritise next quest during teleportation/zone transitions"; span85[1] = "Improved accepted quest logic with abandoned quest detection"; span85[2] = "Show quests without quest paths as Locked"; reference160 = new ChangeEntry(EChangeCategory.Changed, "Quest prioritisation improvements", list161); span83[2] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.35 Deep Dungeon, Hildibrand, Yok Huy, Monster Hunter Wilds Collab, and Doman Enclave quests"); span83[3] = new ChangeEntry(EChangeCategory.Fixed, "Fixed accepted/active quest display and Hildibrand quest issues"); reference158 = new ChangelogEntry("6.12", releaseDate71, list159); ref ChangelogEntry reference161 = ref span[71]; DateOnly releaseDate72 = new DateOnly(2025, 10, 3); num2 = 1; List list162 = new List(num2); CollectionsMarshal.SetCount(list162, num2); CollectionsMarshal.AsSpan(list162)[0] = new ChangeEntry(EChangeCategory.Changed, "Added remaining checks for quest priority to prevent infinite teleport looping"); reference161 = new ChangelogEntry("6.11", releaseDate72, list162); ref ChangelogEntry reference162 = ref span[72]; DateOnly releaseDate73 = new DateOnly(2025, 10, 2); num2 = 1; List list163 = new List(num2); CollectionsMarshal.SetCount(list163, num2); ref ChangeEntry reference163 = ref CollectionsMarshal.AsSpan(list163)[0]; num3 = 2; List list164 = new List(num3); CollectionsMarshal.SetCount(list164, num3); Span span86 = CollectionsMarshal.AsSpan(list164); span86[0] = "Don't show quests as available if player doesn't meet level requirements"; span86[1] = "Updated 'required for MSQ' text in Crystal Tower quest preset window"; reference163 = new ChangeEntry(EChangeCategory.Changed, "Quest window improvements", list164); reference162 = new ChangelogEntry("6.10", releaseDate73, list163); ref ChangelogEntry reference164 = ref span[73]; DateOnly releaseDate74 = new DateOnly(2025, 9, 21); num2 = 5; List list165 = new List(num2); CollectionsMarshal.SetCount(list165, num2); Span span87 = CollectionsMarshal.AsSpan(list165); ref ChangeEntry reference165 = ref span87[0]; num3 = 4; List list166 = new List(num3); CollectionsMarshal.SetCount(list166, num3); Span span88 = CollectionsMarshal.AsSpan(list166); span88[0] = "Reworked event quest handling - automatically displays when events are active"; span88[1] = "Reworked journal system with improved filtering and display"; span88[2] = "Reworked Priority Quests tab (Manual Priority and Quest Presets)"; span88[3] = "Quest path viewer site (https://wigglymuffin.github.io/FFXIV-Tools/)"; reference165 = new ChangeEntry(EChangeCategory.Added, "Major system reworks", list166); ref ChangeEntry reference166 = ref span87[1]; num3 = 4; List list167 = new List(num3); CollectionsMarshal.SetCount(list167, num3); Span span89 = CollectionsMarshal.AsSpan(list167); span89[0] = "Questionable.IsQuestCompleted"; span89[1] = "Questionable.IsQuestAvailable"; span89[2] = "Questionable.IsQuestAccepted"; span89[3] = "Questionable.IsQuestUnobtainable"; reference166 = new ChangeEntry(EChangeCategory.Added, "New IPC commands", list167); ref ChangeEntry reference167 = ref span87[2]; num3 = 5; List list168 = new List(num3); CollectionsMarshal.SetCount(list168, num3); Span span90 = CollectionsMarshal.AsSpan(list168); span90[0] = "Improved JSON quest validation with specific error reasons"; span90[1] = "Added stop at sequence stop condition"; span90[2] = "Improved Pandora plugin conflict detection"; span90[3] = "Improved DialogueChoices regex matching"; span90[4] = "Improved refresh checker for all quest states"; reference167 = new ChangeEntry(EChangeCategory.Changed, "Various improvements", list168); span87[3] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added 7.31 Occult Crescent quests"); span87[4] = new ChangeEntry(EChangeCategory.Fixed, "Fixed cutscene crashes, Single Player Duty triggers, and various quest issues"); reference164 = new ChangelogEntry("6.9", releaseDate74, list165); ref ChangelogEntry reference168 = ref span[74]; DateOnly releaseDate75 = new DateOnly(2025, 9, 2); num2 = 4; List list169 = new List(num2); CollectionsMarshal.SetCount(list169, num2); Span span91 = CollectionsMarshal.AsSpan(list169); ref ChangeEntry reference169 = ref span91[0]; num3 = 3; List list170 = new List(num3); CollectionsMarshal.SetCount(list170, num3); Span span92 = CollectionsMarshal.AsSpan(list170); span92[0] = "Help commands and priority quest command"; span92[1] = "Prevent 'CompleteQuest' step setting"; span92[2] = "Duty counts and controls in 'Quest Battles' tab"; reference169 = new ChangeEntry(EChangeCategory.Added, "Command and UI improvements", list170); span91[1] = new ChangeEntry(EChangeCategory.Changed, "Improved 'Clear All' buttons to require CTRL being held"); span91[2] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added Zodiac quests and 7.31 Cosmic/Occult Crescent quests"); span91[3] = new ChangeEntry(EChangeCategory.Fixed, "Fixed Fishing for Friendship and Cosmic Exploration quests"); reference168 = new ChangelogEntry("6.8", releaseDate75, list169); ref ChangelogEntry reference170 = ref span[75]; DateOnly releaseDate76 = new DateOnly(2025, 8, 27); num2 = 4; List list171 = new List(num2); CollectionsMarshal.SetCount(list171, num2); Span span93 = CollectionsMarshal.AsSpan(list171); ref ChangeEntry reference171 = ref span93[0]; num3 = 2; List list172 = new List(num3); CollectionsMarshal.SetCount(list172, num3); Span span94 = CollectionsMarshal.AsSpan(list172); span94[0] = "Icon to 'Clear All' button in stop conditions"; span94[1] = "Duty counts and 'Enable All' button in 'Duties' tab"; reference171 = new ChangeEntry(EChangeCategory.Added, "UI improvements", list172); span93[1] = new ChangeEntry(EChangeCategory.Changed, "Renamed 'Clear' button to 'Clear All' in priority window"); span93[2] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added Rising 2025 Event Quests"); span93[3] = new ChangeEntry(EChangeCategory.Fixed, "Fixed clipboard assigning blacklist to whitelist in 'Duties' tab"); reference170 = new ChangelogEntry("6.7", releaseDate76, list171); ref ChangelogEntry reference172 = ref span[76]; DateOnly releaseDate77 = new DateOnly(2025, 8, 25); num2 = 2; List list173 = new List(num2); CollectionsMarshal.SetCount(list173, num2); Span span95 = CollectionsMarshal.AsSpan(list173); ref ChangeEntry reference173 = ref span95[0]; num3 = 2; List list174 = new List(num3); CollectionsMarshal.SetCount(list174, num3); Span span96 = CollectionsMarshal.AsSpan(list174); span96[0] = "Missing emotes to schema and emote handler"; span96[1] = "Improved stop conditions with 'Clear All' button"; reference173 = new ChangeEntry(EChangeCategory.Added, "Emote support and stop conditions", list174); span95[1] = new ChangeEntry(EChangeCategory.Changed, "Stop at level functionality"); reference172 = new ChangelogEntry("6.6", releaseDate77, list173); ref ChangelogEntry reference174 = ref span[77]; DateOnly releaseDate78 = new DateOnly(2025, 8, 25); num2 = 2; List list175 = new List(num2); CollectionsMarshal.SetCount(list175, num2); Span span97 = CollectionsMarshal.AsSpan(list175); span97[0] = new ChangeEntry(EChangeCategory.Fixed, "Potential fix to single/solo duties softlocking"); span97[1] = new ChangeEntry(EChangeCategory.QuestUpdates, "Added San d'Oria: The Second Walk and various side quests"); reference174 = new ChangelogEntry("6.5", releaseDate78, list175); Changelogs = list; } }