Skip to content

Modpack Creator Mode (Automatic Changelog Generation)#185

Open
arthursimao wants to merge 2 commits into
FreesmTeam:developfrom
arthursimao:modpack-creator
Open

Modpack Creator Mode (Automatic Changelog Generation)#185
arthursimao wants to merge 2 commits into
FreesmTeam:developfrom
arthursimao:modpack-creator

Conversation

@arthursimao

Copy link
Copy Markdown

This feature was implemented with the help of AI, as I don’t have experience with C++. Feedback, improvements, and refactoring suggestions are very welcome.

FreesmModders added 2 commits May 16, 2026 09:46
Adds a new 'Modpack Creator' page to the instance settings dialog that
allows users to mark instances as their own modpacks and generate
changelogs automatically.

New files:
- ModpackChangelogGenerator.h/cpp: Core logic for creating version
  snapshots of the mod list and comparing them to detect added, removed,
  and updated mods based on mod IDs (not just names).
- ModpackCreatorPage.h/cpp/ui: Qt UI page with modpack toggle,
  metadata fields (name/author), changelog generation button, clipboard
  copy, and version history management.

Modified files:
- BaseInstance.h/cpp: Added ModpackCreatorEnabled, ModpackCreatorName,
  and ModpackCreatorAuthor settings with accessor methods.
- InstancePageProvider.h: Registered ModpackCreatorPage in the instance
  page list.
- CMakeLists.txt: Added all new source and UI form files.

Key features:
- One-click 'Mark as My Modpack' toggle per instance
- Automatic version snapshots stored as JSON in instance root
- Comparison logic categorizes changes into Added/Removed/Updated
- Clean formatted changelog output matching the requested format
- Copy to clipboard with visual feedback
- Version history with clear option
- Mod identification by mod_id for accuracy, with filename fallback

Signed-off-by: FreesmModders <freesmmodders@users.noreply.github.com>
Signed-off-by: FreesmModders <freesmmodders@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant