rgravlin / noitabackup

Basic Noita (file) backup and restore utility
https://github.com/rgravlin/noitabackup
1 stars 0 forks source link
backup noita restore savescum

Noita Backup and Restore (file) Utility

The goal of this project is to have an easy to use Noita backup and restore solution. I work mostly in Go, so that's why the language was chosen. The UI was built with GioUI and the command line interface with cobra

How To Use

First Use (Backup)

  1. Download the latest release from this GitHub Repo Releases
  2. Create the default backup directory %USERPROFILE%\NoitaBackup
  3. Launch noitabackup.exe in either GUI mode for ease of use
  4. You must quit Noita noita.exe to execute launch, backup, and restore functions
  5. When Noita is not running, you must first execute a backup
    • This will copy %APPDATA%\..\LocalLow\Nolla_Games_Noita\save00 to %USERPROFILE%\NoitaBackup
    • The timestamp will look like 2024-06-12-17-49-18 (these are your backups)

Restore

  1. Whenever you want to restore the LATEST backup, quit Noita, and click restore
    • This will, assuming your base directory is %APPDATA%\..\LocalLow\Nolla_Games_Noita\:
    • Delete %BASE%\save00.bak (emergency backup that is rotated on every restore)
    • Rename %BASE%\save00 to %BASE%\save00.bak
    • Copy the LATEST backup to %BASE%\save00
    • Launch Noita if you have auto-launch enabled

Advanced Use

Configuration File

The default configuration file is looked for in $HOME/.noitabackup.yaml and has the same configuration parameters as the CLI application.

---
auto-launch: 'true'
num-backups: 16
destination-path: C:\\Users\\Demo\\NoitaBackups
source-path: C:\\Users\\Demo\\AppData\\LocalLow\\Nolla_Games_Noita\\save00
steam-path: C:\\Program Files (x86)\\Steam\\steam.exe

PowerShell - Alter default configuration

PS C:\> $env:CONFIG_NOITA_DST_PATH = 'C:\Users\demo\backuptest'
PS C:\> .\noitabackup.exe backup
2024/06/12 07:14:16 timestamp: 2024-06-12-07-14-16
2024/06/12 07:14:16 source: C:\Users\demo\AppData\Roaming\..\LocalLow\Nolla_Games_Noita\save00
2024/06/12 07:14:16 destination: C:\Users\demo\backuptest\2024-06-12-07-14-16
2024/06/12 07:14:16 number of backups: 16
2024/06/12 07:14:16 maximum backup threshold reached
2024/06/12 07:14:16 removing backup folder: C:\Users\demo\backuptest\2024-06-11-07-33-30
2024/06/12 07:14:24 timestamp: 2024-06-12-07-14-24
2024/06/12 07:14:24 total time: 8.5259157s
2024/06/12 07:14:24 total dirs copied: 8
2024/06/12 07:14:24 total files copied: 10418

Command Line - Alter default configuration

C:\> set CONFIG_NOITA_DST_PATH='C:\Users\demo\backuptest'
C:\> noitabackup.exe backup
2024/06/12 07:14:16 timestamp: 2024-06-12-07-14-16
2024/06/12 07:14:16 source: C:\Users\demo\AppData\Roaming\..\LocalLow\Nolla_Games_Noita\save00
2024/06/12 07:14:16 destination: C:\Users\demo\NoitaBackups\2024-06-12-07-14-16
2024/06/12 07:14:16 number of backups: 16
2024/06/12 07:14:16 maximum backup threshold reached
2024/06/12 07:14:16 removing backup folder: C:\Users\demo\NoitaBackups\2024-06-11-07-33-30
2024/06/12 07:14:24 timestamp: 2024-06-12-07-14-24
2024/06/12 07:14:24 total time: 8.5259157s
2024/06/12 07:14:24 total dirs copied: 8
2024/06/12 07:14:24 total files copied: 10418