Hello everyone,
This update brings improvements to loading, a new atomic save system for better data integrity, and the much requested CSV Import/Export feature!
Don't forget to back up your projects every now and then!
Key Highlights:
- loading is now more responsive
- Atomic save system prevents data loss from external factors like power failures
- CSV Import/Export makes managing card data easy
- Various fixes and optimizations for better stability
Bug reports and feedback are always welcome, either on the Community Hub or our official Discord server.
Fred,
The Developer
Read the full patch notes below:
Improvements
- Reduced the size of several headers
- Project loading now tracks individual tasks in the database instead of showing a simple 0/1 task count, so that users with massive projects don’t think the app is frozen
- Dynamic batching makes loading smoother. Small projects should no longer freeze before instantly jumping to 100%
- Updated Unique ID generation algorithm to start with a YYYYMMDDHHMMSS format instead of a Unix timestamp
- ‘Import XML’ will now default to the project export path when the file browser is opened
Fixes
- In-engine XML errors shown in the fatal error window are now properly logged to the .log files
- Fixed an issue where the error window displayed ‘Error message:’ twice
- Fixed a bug where an empty category could appear if importing card data before the asset browser was initialized
- Fixed a bug where unloading assets after calling delete category could cause null references, leading to software instability
New Features
Atomic Save Functionality
In previous versions, Card Engine wrote files directly during the save process. While functional, this method lacked protection against external interruptions like power loss or crashes.
The new atomic save system improves data integrity by writing to temporary files first. Once the save is confirmed complete, the temporary files are swapped with the originals. This prevents corruption in case of an interruption and ensures original files remain intact.
Additionally, lightweight backups are now created in /Temp folders, allowing recovery in case of unexpected failures. This should eliminate the rare ‘XML error’ bug reports.
Tag Component for Selected Objects
Added a new tag-component to the selected object UI, allowing users to write custom text to identify objects. This is especially useful for CSV imports/exports!
CSV Import/Export
You can now export card data as a user-friendly .CSV file.
- Every tag created will appear as a column header
- Cards with values under those tags will populate corresponding columns
- Import your modified .CSV back into the project to apply changes to all cards
- Delete cards by adding a ! at the beginning of the CardID cell
- Delete decks by adding a ! at the beginning of the Deck cell
This makes bulk editing card data faster and more intuitive
