Skip to content

feat: Modpack Creator Mode#207

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

feat: Modpack Creator Mode#207
notwindstone wants to merge 2 commits into
FreesmTeam:developfrom
arthursimao:modpack-creator

Conversation

@notwindstone

Copy link
Copy Markdown
Member

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.

These are not my changes; some insane stuff happened in #185 (I re-opened that PR here)

Author: @arthursimao

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

Assisted-by: Claude:claude-opus-4.6
Assisted-by: Google:gemini-3.1-pro
Signed-off-by: Arthur <111069131+arthursimao@users.noreply.github.com>
Assisted-by: Claude:claude-opus-4.6
Assisted-by: Google:gemini-3.1-pro
Signed-off-by: Arthur <111069131+arthursimao@users.noreply.github.com>
@arthursimao

Copy link
Copy Markdown
Contributor

I don't know what happened but that sounds pretty funny

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.

2 participants