Skip to content

ArcademMan/Pyab

Repository files navigation

PyAB Logo

AmMstools - PyAB

Game Save Backup Manager for Windows

Beta Windows Python 3.11+ PySide6 MIT License


PyAB automatically backs up your game save files so you never lose progress. It monitors save files in real time, captures screenshots, and lets you restore any backup with one click.

Features

  • Automatic Backups — timer-based or triggered by file changes (watchdog)
  • Game Detection — pauses when the game isn't running, resumes when it is
  • Screenshot Capture — saves a screenshot with each backup (auto-detects game monitor)
  • Multi-file Saves — supports games with multiple save files (comma-separated)
  • Profile System — multiple backup profiles per game with independent settings
  • Backup Management — restore, delete, browse backups with context menu
  • Screenshot Preview — click to zoom into full-size view
  • Backup Limits — auto-cleanup by file count or total size
  • Path Templates — flexible path resolution (#Documents#, #Steam#, #AppData#, #ID#)
  • Dark Theme — Material Design-inspired dark UI
  • Localization — English and Italian, switchable from Settings menu
  • Portable Data — user data stored in %APPDATA%/AmMstools/PyAB/

Installation

Download (Recommended)

Download the latest installer from Releases and run PyAB_Setup.exe.

From Source

git clone https://github.com/ArcademMan/pyab.git
cd pyab
pip install -r requirements.txt
python launcher.py

Build Executable

pip install nuitka
python build.py

The standalone build will be in launcher.dist/.

Create Installer

Requires Inno Setup:

iscc installer.iss

Path Templates

PyAB supports placeholders in save file paths for maximum flexibility:

Placeholder Resolves to
#Documents# Documents folder (OneDrive-aware)
#AppData# AppData root directory
#Steam# Steam installation directory
#Ubisoft# Ubisoft launcher directory
#UserName# User profile directory
#ID# First subdirectory (for Steam user IDs, etc.)
#PYAB# Program base directory

Example: #Documents#\NBGI\DARK SOULS REMASTERED\#ID#

Project Structure

pyab/
├── launcher.py              # Entry point
├── core/
│   ├── pyab/                # Business logic (backup, file watcher)
│   ├── games/               # Game list manager
│   ├── profiles/            # Profile list manager
│   ├── ui/                  # PySide6 UI definitions
│   ├── shared/              # i18n, config, theme, validation
│   └── utils/               # Path resolver, image cache
├── assets/                  # Icons, locale files
├── build.py                 # Nuitka build script
└── installer.iss            # Inno Setup installer script

Data Storage

What Where
User data (games, profiles) %APPDATA%\AmMstools\PyAB\data\
Settings (language) %APPDATA%\AmMstools\config.json
Backups Configurable per profile (default: next to exe)

Dependencies

Credits

Game cover images courtesy of IGDB / Twitch Interactive, Inc.

License

MIT — Code only. Game images are property of their respective owners. See DISCLAIMER.

About

Game save backup manager for Windows — automatic backups, file monitoring, screenshot capture, and one-click restore.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors