Paper Mario DX publishes releases. Each one is a Git tag that ends in a date, in the form dx-YYYY-MM-DD. A fix for an older release adds a number after the date, as in dx-YYYY-MM-DD.1. To update your project, merge a release into your main branch.
If you use Diorama64, it does this for you when you update your mod. The rest of this page is for updating from the terminal.
In VS Code, open a terminal (Terminal > New Terminal), then:
Add papermario-dx as a remote named papermario-dx
git remote add papermario-dx https://knot.starhaven.dev/did:plc:dfsxnyhzxwqpmykryrjtjabzIf you cloned your project from GitHub, or added Paper Mario DX as upstream, rename that remote and point it here instead:
git remote rename origin papermario-dx
git remote set-url papermario-dx https://knot.starhaven.dev/did:plc:dfsxnyhzxwqpmykryrjtjabzUse upstream in place of origin if that's the name you gave it.
See what's new
Fetch the releases and list them, newest first:
git fetch papermario-dx --tags
git tag --list 'dx-*' --sort=-creatordateBefore you merge, read the changelog for each release newer than the one you have. It says what you need to change in your own project.
Merge a release into your main branch
git checkout main
git merge dx-YYYY-MM-DDReplace dx-YYYY-MM-DD with the release you want. If your project is on an older release, merge the newest release rather than each one in turn. A release includes everything before it.
Resolve any merge conflicts
VS Code highlights conflicting sections in the editor with buttons like Accept Current Change, Accept Incoming Change, and Accept Both Changes. Stage each resolved file in the Source Control panel (Ctrl+Shift+G), then commit the merge.
Build
Build as usual with Ctrl+Shift+B. The first build after an update downloads the toolchain for that release.
Merging main instead
If you need a change that isn't in a release yet, you can merge papermario-dx/main:
git fetch papermario-dx
git merge papermario-dx/mainmain can hold unfinished work, and its changes aren't in the changelog's release notes until the next release. A toolchain is published for every release but only for the newest commits on main. If you merge an older main commit, the build can fail with an error that no commit in your history has a published toolchain. Merge a release to fix it.