Commit graph

46 commits

Author SHA1 Message Date
Pat Hartl
f31925e399 Add runtime platform flag to actions, scripts, and save paths 2026-07-08 02:15:54 -05:00
Pat Hartl
6ccf53de21 Fix importing legacy LCX files with no save paths defined
Fixes #426
2026-07-02 18:14:46 -05:00
Pat Hartl
4965d2019b Fix redistributable/tool importing 2026-05-24 18:51:58 -05:00
Pat Hartl
e84c8a9c7a Ensure that redistributable options persist in export/import 2026-05-16 19:38:43 -05:00
Pat Hartl
e56371cd7c Add support for external IDs beyond IGDB 2026-05-14 00:30:45 -05:00
Pat Hartl
f9863043d1 Bump to .NET 10 2026-04-10 02:19:50 -05:00
Pat Hartl
4817c00939 Update SharpCompress, move to async extraction, add logging per entry on fail 2026-03-09 22:12:09 -05:00
Pat Hartl
9e322e5e42 Associate addon with base game on import 2026-03-08 14:03:58 -05:00
Pat Hartl
99eeb4193f Rework metadata lookup to support multiple providers, merging 2026-03-03 22:29:41 -06:00
Pat Hartl
b8e9a8c8cd Fix redist/tool/server exports
Fixes various issues that may prevent redistributables, tools, or servers from being exported properly.
2026-02-28 17:51:30 -06:00
Pat Hartl
2066667c99 Fix export initialization for servers, redistributables, and tools 2026-02-08 15:46:18 -06:00
Pat Hartl
120e14d40c Add Tools section to server app
Allows users to upload additional tools and tie them to games. This can be useful for software like map editors, trainers, etc.
2026-02-08 02:24:53 -06:00
Pat Hartl
1f000f5f5a Add name to export file 2026-01-25 17:33:39 -06:00
Pat Hartl
406a92b104 Fix import issues with scripts, archives, and legacy manifests
- Scripts now import properly
- Archives now import properly when using non-absolute storage location paths
- Support legacy LCX files that have manifests with the name _manifest.yml
2026-01-24 22:32:12 -06:00
Pat Hartl
df521b60f3 Add method to check if manifest is legacy 2025-12-05 21:04:14 -06:00
Pat Hartl
2e84d51b0a Import legacy archives/media 2025-12-05 14:39:04 -06:00
Pat Hartl
0072431226 Fix null CRC32s 2025-12-05 14:38:45 -06:00
Pat Hartl
62e6c25218 Remvoe hard failures for non-existent archive entries 2025-12-05 14:38:34 -06:00
Pat Hartl
de41b1062f Use correct path when importing archive 2025-12-05 14:37:04 -06:00
Pat Hartl
e4f3f499f1 FIx legacy failing to import when missing scripts 2025-12-05 00:32:30 -06:00
Pat Hartl
80e8ffd384 Fix importing legacy multiplayer modes 2025-12-05 00:32:11 -06:00
Pat Hartl
83ae3a4d52 Support legacy import format, queue up assets 2025-12-04 23:44:42 -06:00
Pat Hartl
18d58ec305 Include version in LCX manifest 2025-12-04 19:03:05 -06:00
Pat Hartl
6277f494be Unused code cleanup 2025-12-04 00:34:55 -06:00
Pat Hartl
80c257daa2 Calculate progress properly, show item being imported 2025-12-04 00:34:46 -06:00
Pat Hartl
b3b62e4151 Fix importing of save paths 2025-12-04 00:34:16 -06:00
Pat Hartl
06520030d9 Fix media getting deleted after extraction 2025-12-03 23:47:15 -06:00
Pat Hartl
0bf2ebe618 Fix import items not making it into the queue 2025-12-03 19:32:41 -06:00
Pat Hartl
5b444f91e7 Make SyncRelationCollectionAsync only match existing records 2025-12-03 18:56:35 -06:00
Pat Hartl
908f20800c Better existing archive matching, ensure game is not in queue 2025-12-03 18:55:09 -06:00
Pat Hartl
1e0466ea6f Simplify save matching 2025-12-03 18:54:39 -06:00
Pat Hartl
df4888c577 Bounce scripts in queue if game hasn't been imported 2025-12-03 18:54:27 -06:00
Pat Hartl
2c51017de0 Fix queue dependency by ensuring keys exist 2025-12-03 18:32:42 -06:00
Pat Hartl
3d991dc601 Add import progress/success stage to dialog 2025-12-03 18:32:27 -06:00
Pat Hartl
cf27436a71 Fix media importing when existing entity/file doesn't exist 2025-12-03 18:31:03 -06:00
Pat Hartl
54400fdb10 Refactor server importers
Refactors server importers to better handle dependencies on other data in the queue.
2025-12-03 02:22:37 -06:00
Pat Hartl
6dfc0906ac Refactor launcher library importing, manifests
Switched the library importing in the launcher to work based on a queue. As a new game is added to the queue, it should find any related data and also add it to the queue. This should result in an easier to maintain importer while reducing the load on the launcher's DAL. This may result in more RAM usage while importing. Local manifests have also been refactored to match manifests in import/export LCX files, removing the old manifest format. This is a large breaking change that will probably break existing game installations. A migration will probably have to be created.
2025-11-29 18:24:27 -06:00
Pat Hartl
679837ff5e Add log when media fails to import 2025-11-21 13:16:10 -06:00
Pat Hartl
55ad5ddb96 Use DefaultAsync for default storage location 2025-11-21 13:15:57 -06:00
Pat Hartl
772dd03537 Rename to ArchiveService 2025-11-17 22:09:03 -06:00
Pat Hartl
d875377f15 Rename SDK services -> clients, implement new configuration, use dependency injection for clients 2025-09-24 20:58:23 -05:00
Pat Hartl
58b3db059d Allow more granular selection of records for import/export 2025-08-01 02:27:06 -05:00
Pat Hartl
93523fe8e1 Fix exporting of scripts 2025-07-30 19:25:55 -05:00
Pat Hartl
cc66aedd28 Fix files not being added to export archive 2025-07-29 00:24:28 -05:00
Pat Hartl
29a84fe6eb Fix importer/exporter dependency injection 2025-07-28 08:51:34 -05:00
Pat Hartl
6ec919d1be Separate import and export functionality
This refactor splits the import and export functionality out of the ImportContext and adds an ExportContext. This also introduced separate importer and exporter implementations.

Additionally, adding archive, save, scripts, and server files to the final export archive has been implemented at the exporter implementation for each instead of handling it in the context. This should be a good pattern if other files need to be added down the road.
2025-07-27 17:51:50 -05:00