The Gold Road Chapter – which includes the Scribing system – and Update 42 is now available to test on the PTS! You can read the latest patch notes here: https://forums.elderscrollsonline.com/en/discussion/656454/
Maintenance for the week of April 22:
• [COMPLETE] PC/Mac: NA megaserver for maintenance – April 25, 6:00AM EDT (10:00 UTC) - 2:00PM EDT (18:00 UTC)
https://forums.elderscrollsonline.com/en/discussion/comment/8098811/#Comment_8098811

A (crossplatform) backup script for ESO

petanko
petanko
✭✭
Hi.
It's common knowledge that crashed game client may destroy some of your addon settings, so regular backups are advisable. Of course, you can do it, for example, with GameSaveManager or Minion (it never worked for me), but it requires too much clicking.
The Galen update motivated me enough (ugh, sweet memories of NodeDetection) to write this script. At first, it was for internal use. Later, I shared it with friends, and finally, with the Necrom update looming on the horizon, it's ready for the public (the hardest part was to write a readme and comments in the configuration file).
It's a console script suitable for batch processing. For example, a scenario when you run TTC, Minion, then ESO, and after you finish playing, the backup is created.
It should work on any platform where ESO can run. In most cases, without any need to configure.
Have fun.
Cheers.

uukm7wod8m0k.png
esobaka™ (壊疽馬鹿) - a backup script for Elder Scrolls Online © @petanko


[Features]

    Works on Windows, Linux/Wine, and MacOS*.
    Backup all important stuff from the ESO documents directory.
    Limit maximum backups to keep. Old ones are moved to the RecycleBin/Trash**.
    Limit the number of backups per day.
    Configurable compression level.
    Detect running ESO to prevent backup of broken addons settings***.
    Can be used without a configuration file in most cases. Just run and it'll be done.

    * At least, it should.
    ** Configurable.
    *** Can be disabled if you're brave enough.


[License]

    BSD-2-Clause. Check it on the web if interested.


[Requirements]

    python 3.10+ (https://www.python.org/)
    pyyaml
    send2trash
    psutil

    You can install libraries by running 'pip install pyyaml send2trash psutil'


[Installation]

    Installation is not required. Just make sure all requirements from the [Requirements] section are met.
    The script can be placed anywhere, for example in "/usr/local/bin" or even "C:\Windows\System32" if you
    are crazy enough.


[Configuration]

    You can place the config file in the system-specific location or leave at the same location as the script.
    The example config file is relatively well documented, check it for more details.


[Usage]

    You may need to execute 'chmod +x esobaka[.py]' on Posix systems.

    Windows: py esobaka.py [force] [debug]
    Posix:   esobaka[.py] [force] [debug]

    Using the "force" argument disables checking for running game client. Make sure to not use it when
    any of your characters is logged on, addon settings may be broken in the backup otherwise.
    Use the "debug" argument to produce extra output to identify problems.

    Return codes for batch processing are:
        0   No errors.
        1   Critical error(s), no backup was created.
        2   Non-critical error(s)/issue(s), the backup was created, but nothing were purged.


[History]

    R1 (2022-??-??): Private release.
    R2 (2023-05-06): Public release.
Been there, done that. 「三千六百」
  • aleksandr_ESO
    aleksandr_ESO
    ✭✭✭
    python 3.10+ (https://www.python.org/)
    pyyaml
    send2trash
    psutil

    ChatGPT rewrite more compact and without dependencies
  • petanko
    petanko
    ✭✭
    ChatGPT rewrite more compact and without dependencies

    Sure, it can be (and it was) much more compact w/o handling the user's unpredictability.
    Can I see the GPT version? Quite curious about compactness considering implementing psutil, trash and yaml functionality from scratch.
    Been there, done that. 「三千六百」
  • Zastrix
    Zastrix
    ✭✭✭✭
    (Linux perspective)

    Maybe create a docker image and add volumes for backup directories and the live/pts folder? Also for Minion backups it doesn't want to work with Syslinks. Without Syslinks it works without an issue with the flatpak I've posted today on flathub.

    Edit: Also for Pete's sake just put it on GitHub or GitLab or something for some version controls and alterations from other devs in the community.
    Edited by Zastrix on May 17, 2023 9:29PM
    110-114k Stage 4 Vamprie Magblade u39
    Aldmeri Dominion did nothing wrong in Shadowfen.
  • Baertram
    Baertram
    ✭✭✭✭✭
    Fyi: Minion 3.x Backup on Windows works but got an issue on restore (searches in the wrong folder).
    You can extract the saved backup zip file manually though. So it's a good alternative if you want to backup the folders and files too and w at an Ui. Only restore needs to be done manually via a Zip file extraction then, putting the folders in the correct documents/elder scrolls online/live/ folder manually.

    From www.esoui.com:

    In your users folder, e.g.
    C:\Users\<your windows username>\.minion\minion-backups\<name of the game like you added it to Minion, e.g. ESO-1 for live and ESO-2 for PTS>

    But: The Minion restore of the backup is not working by default!
    It got a bug where it searches the wrong folder, so you need to copy these files to another place to be able to restore the data.

    backup -> backups up to .minion\minion-backups\eso-1
    restore -> tries to restore from .minion\eso-1
    -> So copy the backuped files from the folder e.g. C:\Users\<your windows username>\.minion\minion-backups\eso-1 -> to
    C:\Users\<your windows username>\.minion\eso-1

    OR just open the zip file manually, check the folder in there for the SavedVariables folder and copy it to your live/ folder to get your SV data back.
    Edited by Baertram on May 18, 2023 1:50PM
  • petanko
    petanko
    ✭✭
    Zastrix wrote: »
    (Linux perspective)

    Maybe create a docker image and add volumes for backup directories and the live/pts folder? Also for Minion backups it doesn't want to work with Syslinks. Without Syslinks it works without an issue with the flatpak I've posted today on flathub.

    Is it really worth the time? How many people play ESO on linux and how many of those use docker for that? I'd add btrfs snapshot support, but it's too much pain for nothing.
    Edit: Also for Pete's sake just put it on GitHub or GitLab or something for some version controls and alterations from other devs in the community.

    That's the final version. It works. I don't plan to add any more functionality. If you/anyone wants to put it on github, be my guest. But I don't think it's really necessary.
    Been there, done that. 「三千六百」
  • petanko
    petanko
    ✭✭
    Baertram wrote: »
    Fyi: Minion 3.x Backup on Windows works but got an issue on restore (searches in the wrong folder).
    You can extract the saved backup zip file manually though. So it's a good alternative if you want to backup the folders and files too and w at an Ui. Only restore needs to be done manually via a Zip file extraction then, putting the folders in the correct documents/elder scrolls online/live/ folder manually.

    I don't like Minion because:
    • It can't handle backups properly.
    • It can't install dependencies automatically.
    • It can't uninstall an addon with its dependencies.
    • It can't uninstall (check for) unneeded dependencies.
    • It can't update addons automatically or at least with a single click.
    • It can't handle complex (with subaddons) addon structure which can result in multiple versions installed in different locations. (example: ATT)
    • Sometimes the 64-bit version doesn't work and you need to install a 32-bit one on a 64-bit system.
    • Sometimes it can't see ESO in the default location even if you point it out, then you need to get a working config from another machine.
    • It's a pain on linux.
    • etc etc etc

    That's why I use my own script to install/update/manage addons instead of Minion. Sadly, it's not ready for a public release (even if there is some demand for that, which I doubt).
    Been there, done that. 「三千六百」
  • Baertram
    Baertram
    ✭✭✭✭✭
    I only wanted to describe (that's why I wrote FYI "For your info") why Minion backup is not working properly, not start a "Minion is better" post :smile:
    I get you do not like it and it's okay. Noone forces you to use Minion. This was only an info to all other forum users here.
    Edited by Baertram on May 20, 2023 12:25PM
Sign In or Register to comment.