Skip to main content

Editor for Dragon Age: The Veilguard saves.

Project description

Dragon Age: Save Game tools

This pure-Python library can read and write Dragon Age: The Veilguard save files (*.csav). Since version 1.0 it includes a graphical user interface to make editing the complex save data more accessible. It also comes with several tools (csav2json, json2csav) that can convert the save games to and from easily editable .json documents.

Editor GUI image Editor GUI image Editor GUI image
Editor GUI image Editor GUI image Editor GUI image

Features

  • Edit your main character properties (Lineage, Faction, Class, Level, Skill points, ...)
  • Change your Player & Inquisitor appearance
  • Manage your and your companion's inventories.
  • Edit companion state (i.e. romance flags, skills, ...)
  • View and unlock all available collectibles (appearance items, ...)
  • A very powerful raw data editor that allows you to change every part of the save game (for advanced use cases).

Installation

Easy-to-use single-file binaries for the UI can be found on the Releases page. This is the preferred way for Windows users that only need the GUI version of the save file editor.

The full project is available for download from PyPI. You can install it using pip:

pip install --upgrade bw_save_game[ui]

This will give you the library, all the command-line tools and the UI. Please note that this project requires at least Python 3.8.

Usage

Using the graphical interface is pretty straightforward:

  • Open the menu to load / import save files after which you have multiple tabs (Main, Appearances, ...) available.
  • Make the changes you like and don't forget to use the menu to save (or press Ctrl+S).
  • For more detailed guides, please visit our Nexus Mods page.

If you installed the project via pip use csav-ui [filename] to launch the UI.

This project also ships two CLI applications that can convert a save game into a human-readable JSON document and vice-versa. Editing this document allows you to change every part of a save, however, ensuring correctness and consistency is up to you.

The following command converts 0-439591 Saria-Save 9 #874.csav to JSON:

csav2json "0-439591 Saria-Save 9 #874.csav" my_wip_save.json

Converting the edited save file my_wip_save.json back to the game's binary save game format is as easy as running:

json2csav my_wip_save.json "0-439591 Saria-Save 9 #874-NEW.csav"

The GUI also supports importing / exporting these JSON documents.

Contributing

Making Changes & Contributing

This project uses pre-commit, please make sure to install it before making any changes::

pip install pre-commit
cd bw_save_game
pre-commit install

It is a good idea to update the hooks to the latest version::

pre-commit autoupdate

Licensing

GNU GPLv3 Image

bw_save_game is Free Software under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bw_save_game-1.4.2.tar.gz (520.0 kB view details)

Uploaded Source

Built Distribution

bw_save_game-1.4.2-py3-none-any.whl (62.2 kB view details)

Uploaded Python 3

File details

Details for the file bw_save_game-1.4.2.tar.gz.

File metadata

  • Download URL: bw_save_game-1.4.2.tar.gz
  • Upload date:
  • Size: 520.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for bw_save_game-1.4.2.tar.gz
Algorithm Hash digest
SHA256 fda58cc2c72eefa851050424db450351226c818ae3c53e339d6c8b8c47c72735
MD5 8327ec0ff47d5a43b149f212dac416e3
BLAKE2b-256 bf1f075e6fdfadd1833c42232fa8ca29a54e690d0bb805b5702d0ca35f3bbf0b

See more details on using hashes here.

File details

Details for the file bw_save_game-1.4.2-py3-none-any.whl.

File metadata

File hashes

Hashes for bw_save_game-1.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c51ed7d146e8af69ef8fc5510d4604f2176b8f54ac22eac0388a7611e484cfd6
MD5 b44758b449f8df70d08ea4ac210e720f
BLAKE2b-256 eaa2a9c6f3d8f22eb6ec022c5a94cb2c3a77ce11d3c87f64abe60dcef890d128

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page