Skip to content

Migrate script migrate-v2026.06.14-b3cc51a

Choose a tag to compare

@github-actions github-actions released this 14 Jun 23:48
b3cc51a

Helper script that migrates client-side settings (keybinds, video
options, OptiFine/shader settings, JourneyMap and Xaero waypoints,
creative hotbars) from an old Minecraft instance into a new one.

Use case: you upgraded modpack versions (e.g. C2E2 0.2.0 -> 0.4.2)
from a non-setup-managed install (CurseForge instance, manual
zip, etc.) and your settings didn't carry over, but you still
have a copy of the old instance folder. Installs done via
setup.ps1 already preserve these automatically on upgrade.

servers.dat is intentionally NOT copied — single-server pack
policy lets the build pipeline push DNS/backend changes to
existing players.

Auto-published when docs/assets/migrate-settings.ps1 changed on main.

Install command

irm https://github.com/camcast3/MinecraftInfra/releases/download/migrate-v2026.06.14-b3cc51a/migrate-settings.ps1 | iex

The script auto-detects Prism and CurseForge instances and prompts
you to pick the source and destination, then previews the plan and
asks for confirmation before copying anything. Existing files in
the destination are first moved to _migration-backup-<timestamp>\
so the operation is fully reversible.

SHA-256

060c012436f7072665e4d8ae513cc8a22fc396d964e84bf8d6e6414ea14ebdee

Verify before running (optional, recommended)

$url  = 'https://github.com/camcast3/MinecraftInfra/releases/download/migrate-v2026.06.14-b3cc51a/migrate-settings.ps1'
$want = '060c012436f7072665e4d8ae513cc8a22fc396d964e84bf8d6e6414ea14ebdee'
$body = irm $url
$got  = (Get-FileHash -InputStream ([IO.MemoryStream]::new([Text.Encoding]::UTF8.GetBytes($body))) -Algorithm SHA256).Hash.ToLower()
if ($got -eq $want) { iex $body } else { throw "SHA-256 mismatch: $got vs $want" }